dbus_bool_t spi_dbus_return_v_object(DBusMessageIter *iter, AtkObject *obj, int unref);
/* tree.c */
-void spi_register_tree_object(DBusConnection *bus, const char *path);
+void spi_register_tree_object(DBusConnection *bus, DRouteData *data, const char *path);
dbus_bool_t spi_dbus_append_tree (DBusMessage * message, AtkObject * obj, DRouteData * data);
spi_dbus_initialize (&ad->droute);
/* Below line for testing -- it should be removed once at-spi-registryd is working */
if (dbus_bus_request_name(ad->droute.bus, "test.atspi.tree", 0, &error)) printf("Got test name.\n");
- spi_register_tree_object(ad->droute.bus, "/org/freedesktop/atspi/tree");
+ spi_register_tree_object(ad->droute.bus, &ad->droute, "/org/freedesktop/atspi/tree");
if (!dbus_connection_try_register_fallback (ad->droute.bus, "/org/freedesktop/atspi/accessible/", &droute_vtable, &ad->droute, &error))
{
g_warning("Couldn't register droute.\n");
gint childcount;
GSList *l;
+ g_assert(data != NULL);
+
dbus_message_iter_open_container (iter_array, DBUS_TYPE_STRUCT, NULL,
&iter_struct);
path = spi_dbus_get_path (obj);
DBusMessageIter iter, iter_array;
dbus_bool_t result;
+ g_assert(data != NULL);
+
dbus_message_iter_init_append (message, &iter);
dbus_message_iter_open_container (&iter, DBUS_TYPE_ARRAY, "(ooaoassus)",
&iter_array);
void
spi_register_tree_object(DBusConnection *bus,
+ DRouteData *data,
const char *path)
{
dbus_bool_t mem = FALSE;
- mem = dbus_connection_register_object_path(bus, path, &tree_vtable, NULL);
+ mem = dbus_connection_register_object_path(bus, path, &tree_vtable, data);
g_assert(mem == TRUE);
}
break;
}
g_hash_table_remove(cache_list, path);
- }
+}
gboolean spi_dbus_update_cache(DRouteData *data)
{
DBusMessageIter iter;
CacheIterData d;
+ g_assert(data != NULL);
+
if (update_pending == 0) return FALSE;
//printf("Sending cache\n");
message = dbus_message_new_signal("/org/freedesktop/atspi/tree", "org.freedesktop.atspi.Tree", "UpdateTree");