edje: don't leak memory on edje block error during signal emit.
authorcedric <cedric>
Wed, 29 Aug 2012 07:18:52 +0000 (07:18 +0000)
committercedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 29 Aug 2012 07:18:52 +0000 (07:18 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/edje@75815 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

ChangeLog
NEWS
src/lib/edje_match.c

index 818cd33..d61ca27 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 
        * Textblock: Fixed issue with textblock fit not sizing correctly. This
        fix is not perfect.
+
+2012-08-29  Cedric Bail
+
+       * Don't leak memory on edje block error during signal emit.
diff --git a/NEWS b/NEWS
index dddf53d..75c558e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -33,6 +33,7 @@ Fixes:
     * Call edje_object_message_signal_process also on GROUP part Edje object.
     * Remove memory leak when alias are present in the edj file.
     * Properly destroy color_class and text_class on an Edje_Object.
+    * Stop leaking memory on edje block error during signal emit.
 
 Edje 1.2.0
 
index 375634e..6cb4139 100644 (file)
@@ -499,10 +499,17 @@ edje_match_callback_exec_check_finals(const Edje_Patterns *signal_ppat,
      {
         escb->func(escb->data, ed->obj, sig, source);
         if (_edje_block_break(ed))
-          return 0;
+         {
+             r = 0;
+             break;
+          }
         if ((signal_ppat->delete_me) || (source_ppat->delete_me))
-          return 0;
+          {
+             r = 0;
+             break;
+          }
      }
+
    eina_array_flush(&run);
 
    return r;