devilhorns pushed a commit to branch master.

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

commit bb7353b450b96dc3153af1e7934019ad2bf16223
Author: Chris Michael <[email protected]>
Date:   Tue Sep 17 09:21:15 2019 -0400

    efl_ui_widget_factory: Fix resource leaks
    
    Small patch to fix resource leaks pointed out by Coverity
    
    Fixes Coverity CID1404766
---
 src/lib/elementary/efl_ui_widget_factory.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/efl_ui_widget_factory.c 
b/src/lib/elementary/efl_ui_widget_factory.c
index 0579dc4a51..c9d5759744 100644
--- a/src/lib/elementary/efl_ui_widget_factory.c
+++ b/src/lib/elementary/efl_ui_widget_factory.c
@@ -186,7 +186,11 @@ _efl_ui_widget_factory_efl_ui_factory_create(Eo *obj, 
Efl_Ui_Widget_Factory_Data
    r->factory = efl_ref(obj);
 
    f = calloc(count + 1, sizeof (Eina_Future *));
-   if (!f) return efl_loop_future_rejected(obj, ENOMEM);
+   if (!f)
+     {
+        free(r);
+        return efl_loop_future_rejected(obj, ENOMEM);
+     }
 
    EINA_ITERATOR_FOREACH(models, model)
      {
@@ -195,7 +199,11 @@ _efl_ui_widget_factory_efl_ui_factory_create(Eo *obj, 
Efl_Ui_Widget_Factory_Data
                                      .free = 
_efl_ui_widget_factory_single_cleanup);
 
         f = realloc(f, (count + 1) * sizeof (Eina_Future *));
-        if (!f) return efl_loop_future_rejected(obj, ENOMEM);
+        if (!f)
+          {
+             free(r);
+             return efl_loop_future_rejected(obj, ENOMEM);
+          }
      }
    eina_iterator_free(models);
 

-- 


Reply via email to