Fix empty-string leaks in registry and application.c. Fix from
authorbillh <billh@e2bd861d-eb25-0410-b326-f6ed22b6b98c>
Tue, 14 Mar 2006 17:41:13 +0000 (17:41 +0000)
committerbillh <billh@e2bd861d-eb25-0410-b326-f6ed22b6b98c>
Tue, 14 Mar 2006 17:41:13 +0000 (17:41 +0000)
Vincent Untz - thanks! bug #334217.

git-svn-id: http://svn.gnome.org/svn/at-spi/trunk@799 e2bd861d-eb25-0410-b326-f6ed22b6b98c

ChangeLog
libspi/application.c
registryd/deviceeventcontroller.c
registryd/registry.c

index 6d60ea3..57ab09c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2006-03-11  Vincent Untz  <vuntz@gnome.org>
+
+       Leak fix for bug #334217.
+
+       * libspi/application.c: spi_application_toolkit_event_listener():
+       don't duplicate the string we pass as an argument to
+       spi_init_any_nil() since spi_init_any_nil() already does it
+       * registryd/deviceeventcontroller.c:
+       (spi_dec_button_update_and_emit): ditto
+       (spi_dec_mouse_check): ditto
+       (spi_dec_emit_modifier_event): ditto
+       (spi_device_event_controller_forward_mouse): ditto
+       * registryd/registry.c:
+       (desktop_add_application): ditto
+       (desktop_remove_application): ditto
+
 2006-02-20  Bill Haneman <billh@gnome.org>
 
        * configure.in: Rev to 1.7.6.
index f5dd9a3..a0cfb58 100644 (file)
@@ -164,7 +164,7 @@ spi_application_toolkit_event_listener (GSignalInvocationHint *signal_hint,
   spi_init_any_nil (&e.any_data, 
                    spi_accessible_new_return (atk_get_root (), FALSE, NULL),
                    Accessibility_ROLE_UNKNOWN,
-                   CORBA_string_dup (""));
+                   "");
   notify_listeners (the_app->toolkit_listeners, source, &e);
 
   bonobo_object_unref (BONOBO_OBJECT (source));
index a3bb278..a4f9719 100644 (file)
@@ -448,7 +448,7 @@ spi_dec_button_update_and_emit (SpiDEController *controller,
        spi_init_any_nil (&e.any_data, 
                    spi_accessible_new_return (atk_get_root (), FALSE, NULL),
                    Accessibility_ROLE_UNKNOWN,
-                   CORBA_string_dup (""));
+                   "");
        CORBA_exception_init (&ev);
        if (!is_consumed)
          {
@@ -505,7 +505,7 @@ spi_dec_mouse_check (SpiDEController *controller,
       spi_init_any_nil (&e.any_data,
                    spi_accessible_new_return (atk_get_root (), FALSE, NULL),
                    Accessibility_ROLE_UNKNOWN,
-                   CORBA_string_dup (""));
+                   "");
       CORBA_exception_init (&ev);
       Accessibility_Registry_notifyEvent (BONOBO_OBJREF (controller->registry),
                                          &e,
@@ -517,7 +517,7 @@ spi_dec_mouse_check (SpiDEController *controller,
       spi_init_any_nil (&e.any_data,
                    spi_accessible_new_return (atk_get_root (), FALSE, NULL),
                    Accessibility_ROLE_UNKNOWN,
-                   CORBA_string_dup (""));
+                   "");
       CORBA_exception_init (&ev);
       last_mouse_pos->x = *x;
       last_mouse_pos->y = *y;
@@ -559,7 +559,7 @@ spi_dec_emit_modifier_event (SpiDEController *controller, guint prev_mask,
   spi_init_any_nil (&e.any_data,
                    spi_accessible_new_return (atk_get_root (), FALSE, NULL),
                    Accessibility_ROLE_UNKNOWN,
-                   CORBA_string_dup (""));
+                   "");
   CORBA_exception_init (&ev);
   Accessibility_Registry_notifyEvent (BONOBO_OBJREF (controller->registry),
                                      &e,
@@ -1077,7 +1077,7 @@ spi_device_event_controller_forward_mouse_event (SpiDEController *controller,
       spi_init_any_nil (&e.any_data,
                    spi_accessible_new_return (atk_get_root (), FALSE, NULL),
                    Accessibility_ROLE_UNKNOWN,
-                   CORBA_string_dup (""));
+                   "");
       CORBA_exception_init (&ev);
       
       Accessibility_Registry_notifyEvent (BONOBO_OBJREF (controller->registry),
index 0dab16a..d49de13 100644 (file)
@@ -119,7 +119,7 @@ desktop_add_application (SpiDesktop *desktop,
   spi_init_any_nil (&e.any_data,
                    e.source,
                    Accessibility_ROLE_DESKTOP_FRAME,
-                   CORBA_string_dup (""));
+                   "");
 
   Accessibility_Registry_notifyEvent (BONOBO_OBJREF (registry),
                                      &e, &ev);
@@ -152,7 +152,7 @@ desktop_remove_application (SpiDesktop *desktop,
   spi_init_any_nil (&e.any_data,
                    e.source,
                    Accessibility_ROLE_DESKTOP_FRAME,
-                   CORBA_string_dup (""));
+                   "");
   Accessibility_Accessible_unref (a, &ev);
   Accessibility_Registry_notifyEvent (BONOBO_OBJREF (registry),
                                      &e, &ev);