* evas/cache: remove the freed worker from the pthread worker list when it's failed to create a new thread so as not to access it if a thread is working newly.

This commit is contained in:
ChunEon Park 2013-02-25 16:56:25 +09:00
parent 0920a8e182
commit 2af4cc2687
3 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,7 @@
2013-02-23 ChunEon Park (Hermet)
* Evas cache: remove the freed worker from the pthread worker list when it's failed to create a new thread so as not to access it if a thread is working newly.
2013-02-21 Tom Hacohen (TAsn)
* Evas text: Fixed bug with the text object direction detection.

2
NEWS
View File

@ -179,4 +179,4 @@ Fixes:
* Fix ecore-x edid fetch to ftech 128, not 100 bytes.
* Evas text: Fixed bug with the text object direction detection.
* Evas font: Fixed font run detection for specific cases with 2 different fonts in the middle of a run.
* Evas cache: remove the freed worker from the pthread worker list when it's failed to create a new thread so as not to access it if a thread is working newly.

View File

@ -192,6 +192,7 @@ on_error:
LKL(_mutex);
if (_threads_count == 0)
{
_workers = EINA_INLIST_CONTAINER_GET(eina_inlist_remove(EINA_INLIST_GET(_workers), EINA_INLIST_GET(work)), Evas_Preload_Pthread_Worker);
LKU(_mutex);
if (work->func_cancel) work->func_cancel(work->data);
free(work);