summaryrefslogtreecommitdiff
path: root/src/lib/evas/common/evas_image_main.c
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2019-08-21 00:32:38 +0100
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2019-08-21 20:02:24 +0100
commite15d9c86df78f673299cde833f85d0b9e5dcef17 (patch)
tree874fea58136a5f746742454e3e5837d4ae8ab2d3 /src/lib/evas/common/evas_image_main.c
parent5f5e95e336f027a92d61883c2247bcf3a98b5d02 (diff)
eina file refs in edje/evas - audit them and plug holes where refs stay
in 1 situation at least we delete the eina file (close it) but keep the ptr around (during destruction) which could cause issues with callbaks and events on del and so on.... which may lead to multiple closes where only one should happen ... which would explain my invalid eina file ref problems i'm seeing. i carefully matched eina file handle stores/opens/dups to closes in edje/evas and they seemed to all match up so this audit with comments and fixes seems to have plugged that now. @fix
Diffstat (limited to '')
-rw-r--r--src/lib/evas/common/evas_image_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/evas/common/evas_image_main.c b/src/lib/evas/common/evas_image_main.c
index 1be23a591e..e06fc9f653 100644
--- a/src/lib/evas/common/evas_image_main.c
+++ b/src/lib/evas/common/evas_image_main.c
@@ -522,7 +522,7 @@ _evas_common_rgba_image_delete(Image_Entry *ie)
522 } 522 }
523 if (ie->f && !ie->flags.given_mmap) 523 if (ie->f && !ie->flags.given_mmap)
524 { 524 {
525 eina_file_close(ie->f); 525 eina_file_close(ie->f); // close matching open (dup in _evas_image_file_header) OK
526 ie->f = NULL; 526 ie->f = NULL;
527 } 527 }
528 eina_freeq_ptr_add(eina_freeq_main_get(), im, free, sizeof(*im)); 528 eina_freeq_ptr_add(eina_freeq_main_get(), im, free, sizeof(*im));