summaryrefslogtreecommitdiff
path: root/src/lib/evas/common/evas_image_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/evas/common/evas_image_main.c')
-rw-r--r--src/lib/evas/common/evas_image_main.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/lib/evas/common/evas_image_main.c b/src/lib/evas/common/evas_image_main.c
index 10966fd..ce07dab 100644
--- a/src/lib/evas/common/evas_image_main.c
+++ b/src/lib/evas/common/evas_image_main.c
@@ -392,11 +392,16 @@ EAPI void
392evas_common_rgba_pending_unloads_cleanup(void) 392evas_common_rgba_pending_unloads_cleanup(void)
393{ 393{
394 Image_Entry *ie; 394 Image_Entry *ie;
395 Eina_List *l;
396 Eina_List *l_next;
395 397
396 EINA_LIST_FREE(pending_unloads, ie) 398 EINA_LIST_FOREACH_SAFE(pending_unloads, l, l_next, ie)
397 { 399 {
398 if ((ie->need_unload) && (!ie->preload)) 400 if ((ie->need_unload) && (!ie->preload) && (!ie->flags.preload_done))
399 evas_common_rgba_image_unload_real(ie); 401 {
402 evas_common_rgba_image_unload_real(ie);
403 pending_unloads = eina_list_remove_list(pending_unloads, l);
404 }
400 } 405 }
401} 406}
402 407