- if ((ls->event_type_quark == ctx->etype.major) ||
- (ls->event_type_quark == ctx->etype.minor))
- {
-#ifdef SPI_DEBUG
- fprintf (stderr, "notifying listener %d\n", 0);
-/* g_list_index (list, l->data)); */
- s = Accessibility_Accessible__get_name (ctx->source, ctx->ev);
- fprintf (stderr, "event source name %s\n", s);
- CORBA_free (s);
-#endif
-
- ctx->e_out.source = CORBA_Object_duplicate (ctx->source, ctx->ev);
-
- if (BONOBO_EX (ctx->ev))
- {
- return SPI_RE_ENTRANT_CONTINUE;;
- }
-
- if ((*list) && (*list)->data == ls)
- {
- Accessibility_EventListener_notifyEvent (
- (Accessibility_EventListener) ls->listener, &ctx->e_out, ctx->ev);
- if (ctx->ev->_major != CORBA_NO_EXCEPTION)
- {
- g_warning ("Accessibility app error: exception during "
- "event notification: %s\n",
- CORBA_exception_id (ctx->ev));
- }
- }
- else /* dup re-entered */
- {
- CORBA_Object_release (ctx->e_out.source, ctx->ev);
- }
- }
+ if (!g_strcmp0(iface, DBUS_INTERFACE_DBUS) && !g_strcmp0(member, "NameOwnerChanged"))
+ handle_disconnection (bus, message, user_data);
+ else
+ res = DBUS_HANDLER_RESULT_NOT_YET_HANDLED;