cedric pushed a commit to branch master.

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

commit eaf9822094ac02631216ab0b79849392034b9f8f
Author: Cedric BAIL <ced...@osg.samsung.com>
Date:   Sat Apr 25 20:00:44 2015 +0200

    emile: fix memory leak.
    
    CID 1288918 & 1288919
---
 src/lib/emile/emile_image.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/lib/emile/emile_image.c b/src/lib/emile/emile_image.c
index 06a5da4..d0f35a1 100644
--- a/src/lib/emile/emile_image.c
+++ b/src/lib/emile/emile_image.c
@@ -519,13 +519,19 @@ _emile_tgv_data(Emile_Image *image,
             if (image->compress)
               {
                  if (!emile_expand(data_start, buffer, EMILE_LZ4HC))
-                   goto on_error;
+                   {
+                      eina_binbuf_free(data_start);
+                      goto on_error;
+                   }
               }
             else
               {
                  buffer = data_start;
                  if (block_count * etc_block_size != block_length)
-                   goto on_error;
+                   {
+                      eina_binbuf_free(data_start);
+                      goto on_error;
+                   }
               }
             it = eina_binbuf_string_get(buffer);
 
@@ -635,6 +641,8 @@ _emile_tgv_data(Emile_Image *image,
                         abort();
                      }
                 } /* bx,by inside blocks */
+
+            eina_binbuf_free(data_start);
          } /* x,y macroblocks */
 
    // TODO: Add support for more unpremultiplied modes (ETC2)

-- 


Reply via email to