hermet pushed a commit to branch master.

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

commit 4092c3a554ccfb2bd841f0b15b24c19dfe3be970
Author: JongMin Lee <jm105....@samsung.com>
Date:   Fri Apr 27 14:14:37 2018 +0900

    evas: resolve possible memory leak.
---
 src/lib/evas/canvas/evas_out.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_out.c b/src/lib/evas/canvas/evas_out.c
index a1a35a1276..40cce4ce04 100644
--- a/src/lib/evas/canvas/evas_out.c
+++ b/src/lib/evas/canvas/evas_out.c
@@ -53,7 +53,13 @@ efl_canvas_output_add(Evas *canvas)
    r->changed = EINA_TRUE;
 
    e = _efl_canvas_output_async_block(r);
-   if (!e) return NULL;
+   if (!e)
+     {
+        efl_wref_del(canvas, &r->canvas);
+        free(r);
+        return NULL;
+     }
+
    // Track this output in Evas
    e->outputs = eina_list_append(e->outputs, r);
 

-- 


Reply via email to