--- atk-bridge/bridge.c.orig	2008-09-05 15:37:54.046098231 +0800
+++ atk-bridge/bridge.c	2008-09-05 15:59:55.399017901 +0800
@@ -1101,7 +1101,7 @@
   CORBA_any any;
   CORBA_Object c_obj;
   char *sp = NULL;
-  AtkObject *ao;
+  AtkObject *ao = NULL;
   gint detail1 = 0, detail2 = 0;
   SpiAccessible *s_ao = NULL;
 #ifdef SPI_BRIDGE_DEBUG
@@ -1162,7 +1162,7 @@
           ao = ATK_OBJECT (child);
           g_object_ref (ao);
         }
-      else
+      else if (strcmp (detail, "add") == 0)
         {
           ao = atk_object_ref_accessible_child (ATK_OBJECT (gobject), 
                                                 detail1);
