[prevent][38682] Fix for resource leak 38/173338/2
authorPaweł Stawicki <p.stawicki@samsung.com>
Tue, 20 Mar 2018 16:19:37 +0000 (17:19 +0100)
committerLukasz Oleksak <l.oleksak@samsung.com>
Wed, 21 Mar 2018 09:04:15 +0000 (09:04 +0000)
Change-Id: Iea61c399f59d2ddb2b55768f325c3005e01cfcf3

atspi/atspi-event-listener.c

index be04ad2..4f59939 100644 (file)
@@ -766,6 +766,7 @@ atspi_event_listener_deregister_from_callback (AtspiEventListenerCB callback,
   GPtrArray *matchrule_array;
   gint i;
   GList *l;
+  gboolean result = TRUE;
 
   if (!convert_event_type_to_dbus (event_type, &category, &name, &detail, &matchrule_array))
   {
@@ -800,8 +801,10 @@ atspi_event_listener_deregister_from_callback (AtspiEventListenerCB callback,
            atspi_path_registry,
            atspi_interface_registry,
            "DeregisterEvent");
-      if (!message)
-      return FALSE;
+      if (!message) {
+        result = FALSE;
+        break;
+      }
       dbus_message_append_args (message, DBUS_TYPE_STRING, &event_type, DBUS_TYPE_INVALID);
       reply = _atspi_dbus_send_with_reply_and_block (message, error);
       if (reply)
@@ -817,7 +820,7 @@ atspi_event_listener_deregister_from_callback (AtspiEventListenerCB callback,
   for (i = 0; i < matchrule_array->len; i++)
     g_free (g_ptr_array_index (matchrule_array, i));
   g_ptr_array_free (matchrule_array, TRUE);
-  return TRUE;
+  return result;
 }
 
 /**