From: Enlightenment S. <no-...@en...> - 2010-10-13 03:56:31
|
Log: fix unitialized error. ==17972== Use of uninitialised value of size 4 ==17972== at 0x42918DB: ecore_thread_cancel (ecore_thread.c:536) ==17972== by 0x4249558: eio_file_thread_error (eio_single.c:35) ==17972== by 0x42478FC: _eio_file_direct_heavy (eio_file.c:78) ==17972== by 0x42910F3: _ecore_feedback_job (ecore_thread.c:247) ==17972== by 0x4291398: _ecore_thread_worker (ecore_thread.c:317) ==17972== by 0x41FE16AE: start_thread (in /lib/libpthread-2.11.2.so) ==17972== by 0x41F3295D: clone (in /lib/libc-2.11.2.so) ==17972== Uninitialised value was created by a heap allocation ==17972== at 0x400793F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==17972== by 0x4248991: eio_file_direct_ls (eio_file.c:566) ==17972== by 0x8050B8E: ephoto_directory_thumb_add (ephoto_directory_thumb.c:127) ==17972== by 0x4061570: _item_realize (elm_gengrid.c:807) ==17972== by 0x4061E27: _item_place (elm_gengrid.c:980) ==17972== by 0x4062875: _pan_calculate (elm_gengrid.c:1199) ==17972== by 0x419DA38: evas_call_smarts_calculate (evas_object_smart.c:843) ==17972== by 0x41C33B2: evas_render_updates_internal (evas_render.c:971) ==17972== by 0x41C4DA1: evas_render_updates (evas_render.c:1414) ==17972== by 0x42F5550: _ecore_evas_x_render (ecore_evas_x.c:406) ==17972== by 0x42EED2C: _ecore_evas_idle_enter (ecore_evas.c:47) ==17972== by 0x428C85F: _ecore_idle_enterer_call (ecore_idle_enterer.c:129) Author: barbieri Date: 2010-10-12 20:56:24 -0700 (Tue, 12 Oct 2010) New Revision: 53336 Modified: trunk/eio/src/lib/eio_single.c Modified: trunk/eio/src/lib/eio_single.c =================================================================== --- trunk/eio/src/lib/eio_single.c 2010-10-13 03:24:22 UTC (rev 53335) +++ trunk/eio/src/lib/eio_single.c 2010-10-13 03:56:24 UTC (rev 53336) @@ -45,24 +45,19 @@ Ecore_Cb end_cb, Ecore_Cb cancel_cb) { - Ecore_Thread *thread; - common->done_cb = done_cb; common->error_cb = error_cb; common->data = data; common->error = 0; /* Be aware that ecore_thread_run could call cancel_cb if something goes wrong. */ - thread = ecore_thread_feedback_run(heavy_cb, - notify_cb, - end_cb, - cancel_cb, - common, - EINA_TRUE); - - if (!thread) return EINA_FALSE; - common->thread = thread; - return EINA_TRUE; + common->thread = ecore_thread_feedback_run(heavy_cb, + notify_cb, + end_cb, + cancel_cb, + common, + EINA_TRUE); + return !!common->thread; } Eina_Bool @@ -74,22 +69,14 @@ Ecore_Cb end_cb, Ecore_Cb cancel_cb) { - Ecore_Thread *thread; - common->done_cb = done_cb; common->error_cb = error_cb; common->data = data; common->error = 0; /* Be aware that ecore_thread_run could call cancel_cb if something goes wrong. */ - thread = ecore_thread_run(job_cb, - end_cb, - cancel_cb, - common); - - if (!thread) return EINA_FALSE; - common->thread = thread; - return EINA_TRUE; + common->thread = ecore_thread_run(job_cb, end_cb, cancel_cb, common); + return !!common->thread; } /* --- */ |