Fixes to unref behavior (changed some bonobo_object_release_unref()
authorbillh <billh@e2bd861d-eb25-0410-b326-f6ed22b6b98c>
Wed, 5 Sep 2001 12:53:26 +0000 (12:53 +0000)
committerbillh <billh@e2bd861d-eb25-0410-b326-f6ed22b6b98c>
Wed, 5 Sep 2001 12:53:26 +0000 (12:53 +0000)
calls back to Bonobo_Unknown_unref-equivalents (Accessibility_Accessible_unref)).

Fixed a bad parameter to accessible_event_listener_init() and
initialized the event listener callbacks list to NULL.

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

ChangeLog
at-bridge/bridge.c
atk-bridge/bridge.c
libspi/accessibleeventlistener.c
libspi/eventlistener.c
libspi/listener.c
libspi/registry.c
registryd/registry.c

index 5c66e2f..ff0d846 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,25 +1,51 @@
+2001-09-04  Bill Haneman <bill.haneman@sun.com>
+
+       * at-bridge/bridge.c:
+           Now allocate Accessibility_Event using
+           Accessibility_Event__alloc() instead of g_new0().
+       * libspi/accessibleeventlistener.c:
+           Fixed accessible__event_listener_init() param, changed to
+           "AccessibleEventListener *" type.
+           Changed a bonobo_object_release_unref() call to
+           Accessibility_Accessible_unref().
+       * libspi/listener.c:
+           Changed Bonobo_Unknown_unref to (equivalent) 
+           Accessibility_Accessible_unref.
+       * libspi/registry.c:
+           Changed bonobo_object_release_unref to 
+           Accessibility_Accessible_unref.
+       
 <2001-09-04  Marc Mulcahy <marc.mulcahy@sun.com>
+       
        * Added files:
-               spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
-               spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
-               spi-util.c spi-util.h
-               Implementations for C bindings to remaining accessibility interfaces.
+           spi_action.c spi_editabletext.c spi_hyperlink.c spi_hypertext.c
+           spi_image.c spi_selection.c spi_table.c spi_text.c spi_value.c
+           spi-util.c spi-util.h
+           Implementations for C bindings to remaining accessibility 
+           interfaces.
 
-       <2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
+<2001-09-04 Marc Mulcahy <marc.mulcahy@sun.com>
+       
        * idl/Action.idl:
-               changed return value of Action from void to boolean to bring in line with ATK.
+           changed return value of Action from void to boolean to 
+           bring in line with ATK.
 
        * idl/Text.idl:
-               Changed getText funcions to return "out" start and end offsets.
-               Changed getAttributes to take and offset and return the start and end offset of the attribute run.
-               Changed getOffsetAtPoint and getCharacterExtents to take an enum describing whether coordinates are window or screen.
+           Changed getText funcions to return "out" start and end offsets.
+           Changed getAttributes to take and offset and return the start 
+           and end offset of the attribute run.
+           Changed getOffsetAtPoint and getCharacterExtents to take an 
+            enum describing whether coordinates are window or screen.
 
        * Added files:
-               libspi/action.c libspi/action.h libspi/editabletext.c libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
-               libspi/hypertext.c libspi/hypertext.h libspi/image.c libspi/image.h libspi/selection.c libspi/selection.h
-               libspi/table.c libspi/table.h libspi/text.c libspi/text.h libspi/value.c libspi/value.h
-                       Added server implementations for outstanding ATK interfaces not yet implemented.
-
+           libspi/action.c libspi/action.h libspi/editabletext.c 
+           libspi/editabletext.h libspi/hyperlink.c libspi/hyperlink.h
+           libspi/hypertext.c libspi/hypertext.h libspi/image.c 
+           libspi/image.h libspi/selection.c libspi/selection.h
+           libspi/table.c libspi/table.h libspi/text.c libspi/text.h 
+           libspi/value.c libspi/value.h
+           Added server implementations for outstanding ATK interfaces 
+           not yet implemented.
  
 2001-09-04  Bill Haneman <bill.haneman@sun.com>
 
index 7b3c876..0db17aa 100644 (file)
@@ -105,12 +105,13 @@ bridge_register_app (gpointer gp)
 
 static void bridge_focus_tracker (AtkObject *object)
 {
-  Accessibility_Event *e = g_new0(Accessibility_Event, 1);
+  Accessibility_Event *e = Accessibility_Event__alloc();
   e->type = CORBA_string_dup ("focus:");
   e->source = bonobo_object_corba_objref (bonobo_object (accessible_new (object)));
   e->detail1 = 0;
   e->detail2 = 0;
   Accessibility_Registry_notifyEvent (registry, e, &ev);
+  /* CORBA_free (e); */
 }
 
 static Accessibility_Registry bridge_get_registry ()
index 7b3c876..0db17aa 100644 (file)
@@ -105,12 +105,13 @@ bridge_register_app (gpointer gp)
 
 static void bridge_focus_tracker (AtkObject *object)
 {
-  Accessibility_Event *e = g_new0(Accessibility_Event, 1);
+  Accessibility_Event *e = Accessibility_Event__alloc();
   e->type = CORBA_string_dup ("focus:");
   e->source = bonobo_object_corba_objref (bonobo_object (accessible_new (object)));
   e->detail1 = 0;
   e->detail2 = 0;
   Accessibility_Registry_notifyEvent (registry, e, &ev);
+  /* CORBA_free (e); */
 }
 
 static Accessibility_Registry bridge_get_registry ()
index c724614..2a3bc4f 100644 (file)
@@ -85,7 +85,7 @@ impl_accessible_event_notify_event (PortableServer_Servant     servant,
           (*cb) (e);
         }
     }
-  bonobo_object_release_unref (e->source, ev);
+  Accessibility_Accessible_unref (e->source, ev);
 }
 
 static void
@@ -102,8 +102,9 @@ accessible_event_listener_class_init (AccessibleEventListenerClass *klass)
 }
 
 static void
-accessible_event_listener_init (Listener *listener)
+accessible_event_listener_init (AccessibleEventListener *listener)
 {
+        listener->callbacks = NULL;
 }
 
 GType
index c724614..2a3bc4f 100644 (file)
@@ -85,7 +85,7 @@ impl_accessible_event_notify_event (PortableServer_Servant     servant,
           (*cb) (e);
         }
     }
-  bonobo_object_release_unref (e->source, ev);
+  Accessibility_Accessible_unref (e->source, ev);
 }
 
 static void
@@ -102,8 +102,9 @@ accessible_event_listener_class_init (AccessibleEventListenerClass *klass)
 }
 
 static void
-accessible_event_listener_init (Listener *listener)
+accessible_event_listener_init (AccessibleEventListener *listener)
 {
+        listener->callbacks = NULL;
 }
 
 GType
index 9dcdb1b..158bbc4 100644 (file)
@@ -88,9 +88,8 @@ impl_notify_event (PortableServer_Servant     servant,
                                                     ev)
            ? "yes" : "no");
   */
-  /* TODO: free/deref the returned interface! */
 #endif
-  Bonobo_Unknown_unref (e->source, ev);
+  Accessibility_Accessible_unref (e->source, ev);
 }
 
 static void
index a8b318c..4a3d8e0 100644 (file)
@@ -463,7 +463,7 @@ impl_registry_notify_event (PortableServer_Servant servant,
     default:
       break;
     }
 bonobo_object_release_unref (e->source, ev);
Accessibility_Accessible_unref (e->source, ev);
 }
 
 static long
@@ -500,7 +500,7 @@ _registry_notify_listeners ( GList *listeners,
           fprintf(stderr, "notifying listener #%d\n", n);
           fprintf(stderr, "event name %s\n", Accessibility_Accessible__get_name(e->source, ev));
 #endif
-          bonobo_object_dup_ref ( e->source, ev);
+          Accessibility_Accessible_ref ( e->source, ev);
           Accessibility_EventListener_notifyEvent ((Accessibility_EventListener) ls->listener,
                                                    e,
                                                    ev);
index a8b318c..4a3d8e0 100644 (file)
@@ -463,7 +463,7 @@ impl_registry_notify_event (PortableServer_Servant servant,
     default:
       break;
     }
 bonobo_object_release_unref (e->source, ev);
Accessibility_Accessible_unref (e->source, ev);
 }
 
 static long
@@ -500,7 +500,7 @@ _registry_notify_listeners ( GList *listeners,
           fprintf(stderr, "notifying listener #%d\n", n);
           fprintf(stderr, "event name %s\n", Accessibility_Accessible__get_name(e->source, ev));
 #endif
-          bonobo_object_dup_ref ( e->source, ev);
+          Accessibility_Accessible_ref ( e->source, ev);
           Accessibility_EventListener_notifyEvent ((Accessibility_EventListener) ls->listener,
                                                    e,
                                                    ev);