examples/efl_thread: fix oob writes
authorMike Blumenkrantz <zmike@samsung.com>
Thu, 24 Oct 2019 12:50:27 +0000 (14:50 +0200)
committerWonki Kim <wonki_.kim@samsung.com>
Mon, 11 Nov 2019 02:20:38 +0000 (11:20 +0900)
Summary: CIDs 1403896, 1403895, 1403892

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10395

src/examples/ecore/efl_thread.c

index 301bf5c..5a2ce14 100644 (file)
@@ -35,7 +35,7 @@ _th_read_change(void *data EINA_UNUSED, const Efl_Event *ev)
         Eina_Error err = efl_io_reader_read(obj, &rw_slice);
         if (!err)
           {
-             buf[rw_slice.len] = 0;
+             buf[rw_slice.len - 1] = 0;
              printf("--- TH READ [%p] [%s] ok %i bytes '%s'\n", obj, efl_core_command_line_command_get(obj), (int)rw_slice.len, buf);
 
              char *buf2 = "yes-im-here ";
@@ -112,7 +112,7 @@ _read_change(void *data EINA_UNUSED, const Efl_Event *ev)
         Eina_Error err = efl_io_reader_read(obj, &rw_slice);
         if (!err)
           {
-             buf[rw_slice.len] = 0;
+             buf[rw_slice.len - 1] = 0;
              printf("--- READ [%p] [%s] ok %i bytes '%s'\n", obj, efl_core_command_line_command_get(obj), (int)rw_slice.len, buf);
           }
      }
@@ -146,7 +146,7 @@ _stdin_read_change(void *data EINA_UNUSED, const Efl_Event *ev)
         Eina_Error err = efl_io_reader_read(obj, &rw_slice);
         if (!err)
           {
-             buf[rw_slice.len] = 0;
+             buf[rw_slice.len - 1] = 0;
              printf("--- STDIN READ [%p] [%s] ok %i bytes '%s'\n", obj, efl_core_command_line_command_get(obj), (int)rw_slice.len, buf);
           }
      }