cedric pushed a commit to branch master.

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

commit 49b8d0e852fee17c7fe2452875eb79af21f37b88
Author: Cedric BAIL <ced...@osg.samsung.com>
Date:   Tue Nov 24 14:33:20 2015 -0800

    evas: avoid double eet_close call while caching GL shader.
---
 src/modules/evas/engines/gl_common/evas_gl_shader.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/modules/evas/engines/gl_common/evas_gl_shader.c 
b/src/modules/evas/engines/gl_common/evas_gl_shader.c
index c5ef0b9..3b7986d 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_shader.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_shader.c
@@ -317,12 +317,15 @@ _evas_gl_common_shader_binary_save(Evas_GL_Shared *shared)
         eet_shutdown();
      }
 
-   if (eet_close(ef) != EET_ERROR_NONE) goto error;
-   if (rename(tmp_file, bin_file_path) < 0) goto error;
+   if (eet_close(ef) != EET_ERROR_NONE) goto destroyed;
+   if (rename(tmp_file, bin_file_path) < 0) goto destroyed;
+
    eet_shutdown();
    return 1;
 
-error:
+ destroyed:
+   ef = NULL;
+ error:
    if (ef) eet_close(ef);
    if (evas_gl_common_file_cache_file_exists(tmp_file)) unlink(tmp_file);
    eet_shutdown();

-- 


Reply via email to