ajwillia-ms pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=cc9e9c57d4b813d117a3fa8e59a74c0b2331a606

commit cc9e9c57d4b813d117a3fa8e59a74c0b2331a606
Author: Andy Williams <a...@andywilliams.me>
Date:   Fri Nov 11 15:00:46 2016 +0000

    elm_code: Fix double free on file close/free
    
    @fix
---
 src/lib/elementary/elm_code_file.c | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/lib/elementary/elm_code_file.c 
b/src/lib/elementary/elm_code_file.c
index 4e8dee4..a87a7d0 100644
--- a/src/lib/elementary/elm_code_file.c
+++ b/src/lib/elementary/elm_code_file.c
@@ -210,19 +210,20 @@ EAPI void elm_code_file_free(Elm_Code_File *file)
         elm_code_line_free(l);
      }
 
-   if (file->file)
-     {
-        if (file->map)
-          eina_file_map_free(file->file, file->map);
-
-        eina_file_close(file->file);
-     }
+   elm_code_file_close(file);
    free(file);
 }
 
 EAPI void elm_code_file_close(Elm_Code_File *file)
 {
+   if (!file->file)
+     return;
+
+   if (file->map)
+     eina_file_map_free(file->file, file->map);
+
    eina_file_close(file->file);
+   file->file = NULL;
 }
 
 EAPI Elm_Code_File_Line_Ending elm_code_file_line_ending_get(Elm_Code_File 
*file)

-- 


Reply via email to