Fix accessibility of root apps on Linux
[platform/core/uifw/at-spi2-atk.git] / atk-adaptor / adaptors / cache-adaptor.c
index f363f8d..edbcb7b 100644 (file)
@@ -79,6 +79,8 @@ append_cache_item (AtkObject * obj, gpointer data)
   const char *name, *desc;
   dbus_uint32_t role;
 
+  g_object_ref (G_OBJECT (obj));
+
   set = atk_object_ref_state_set (obj);
   {
     AtkObject *application, *parent;
@@ -212,6 +214,7 @@ append_cache_item (AtkObject * obj, gpointer data)
   }
   dbus_message_iter_close_container (iter_array, &iter_struct);
   g_object_unref (set);
+  g_object_unref (obj);
 }
 
 /*---------------------------------------------------------------------------*/
@@ -276,8 +279,7 @@ emit_cache_add (SpiCache *cache, GObject * obj)
 static DBusMessage *
 impl_GetRoot (DBusConnection * bus, DBusMessage * message, void *user_data)
 {
-  return spi_object_return_reference (message,
-                                      g_object_ref (G_OBJECT (spi_global_app_data->root)));
+  return spi_object_return_reference (message, spi_global_app_data->root);
 }
 
 /*---------------------------------------------------------------------------*/