spacegrapher pushed a commit to branch master.

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

commit b6649f6c6e18aebd0e8a7a8db8e0df931129b0cf
Author: Dongyeon Kim <dy5....@samsung.com>
Date:   Thu Oct 1 10:05:28 2015 +0900

    evas/gl_common: Fix memory leak for font glyph extension image
    
    Evas_GL_Image created for font glyphs in evas_common_font_rgba_draw
    is sometimes freed after Evas_Engine_GL_Context is freed.
    Since gc is already freed, pt_unref returns and leaves pt behind.
---
 src/modules/evas/engines/gl_common/evas_gl_texture.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/modules/evas/engines/gl_common/evas_gl_texture.c 
b/src/modules/evas/engines/gl_common/evas_gl_texture.c
index f2451c3..f0eb722 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_texture.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_texture.c
@@ -946,11 +946,10 @@ void
 pt_unref(Evas_GL_Texture_Pool *pt)
 {
    if (!pt) return;
-   if (!pt->gc) return;
    pt->references--;
    if (pt->references != 0) return;
 
-   if (!((pt->render) || (pt->native)))
+   if ((pt->gc) && !((pt->render) || (pt->native)))
      {
         if (pt->whole)
            pt->gc->shared->tex.whole =

-- 


Reply via email to