From 425986b4fedc9496774d848a40059e538b5709f8 Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Fri, 10 May 2013 08:54:50 +0900 Subject: [PATCH] do not make eet files get refcounts of 2 on eet_mmap so they then never free. we set references to 1 then on success references++... thus ALWAYS being on 2. --- src/lib/eet/eet_lib.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/eet/eet_lib.c b/src/lib/eet/eet_lib.c index 7318db901a..9c9b636512 100644 --- a/src/lib/eet/eet_lib.c +++ b/src/lib/eet/eet_lib.c @@ -1436,7 +1436,11 @@ eet_mmap(Eina_File *file) } ef = eet_cache_find(path, eet_readers, eet_readers_num); - if (ef && ef->readfp == file) goto done; + if (ef && ef->readfp == file) + { + ef->references++; + goto done; + } /* Allocate struct for eet file and have it zero'd out */ ef = eet_file_malloc(1); @@ -1470,7 +1474,6 @@ eet_mmap(Eina_File *file) goto on_error; done: - ef->references++; UNLOCK_CACHE; return ef;