Activity log for bug #1845645

Date Who What changed Old value New value Message
2019-09-27 12:19:15 Tuure Laurinolli bug added bug
2019-09-27 12:30:03 Tuure Laurinolli description When starting up certain (GTK?) applications from console in a custom X session, such as emacs or ubuntu-bug, there is a lot of log output like: """ ** (emacs:4437): WARNING **: 15:05:10.026: AT-SPI: Could not obtain desktop path or name """ or """ ** (apport-gtk:175957): WARNING **: 15:16:16.747: AT-SPI: Could not obtain desktop path or name """ The issue seems to be related to at-spi2-atk, or at least that's where the code that prints the error is: In register_reply in bridge.c: if (reply) { gchar *app_name, *obj_path; if (strcmp (dbus_message_get_signature (reply), "(so)") != 0) { g_warning ("AT-SPI: Could not obtain desktop path or name\n"); } Which seems to be triggered by an attempt to register the application to ATK: static gboolean register_application (SpiBridge * app) { DBusMessage *message; DBusMessageIter iter; DBusPendingCall *pending; g_free (app->desktop_name); g_free (app->desktop_path); /* These will be overridden when we get a reply, but in practice these defaults should always be correct */ app->desktop_name = g_strdup (ATSPI_DBUS_NAME_REGISTRY); app->desktop_path = g_strdup (ATSPI_DBUS_PATH_ROOT); message = dbus_message_new_method_call (SPI_DBUS_NAME_REGISTRY, ATSPI_DBUS_PATH_ROOT, ATSPI_DBUS_INTERFACE_SOCKET, "Embed"); dbus_message_iter_init_append (message, &iter); spi_object_append_reference (&iter, app->root); if (!dbus_connection_send_with_reply (app->bus, message, &pending, -1) || !pending) { if (pending) dbus_pending_call_unref (pending); dbus_message_unref (message); return FALSE; } dbus_pending_call_set_notify (pending, register_reply, app, NULL); It seems to be caused by nobody being available at the ATSPI_DBUS_PATH_ROOT to handle the message. I have not yet been able to figure out what *should* be handling the message. When starting up certain (GTK?) applications from console in a custom X session, such as emacs or ubuntu-bug, there is a lot of log output like: """ ** (emacs:4437): WARNING **: 15:05:10.026: AT-SPI: Could not obtain desktop path or name """ or """ ** (apport-gtk:175957): WARNING **: 15:16:16.747: AT-SPI: Could not obtain desktop path or name """ The issue seems to be related to at-spi2-atk, or at least that's where the code that prints the error is: In register_reply in bridge.c:   if (reply)     {       gchar *app_name, *obj_path;       if (strcmp (dbus_message_get_signature (reply), "(so)") != 0)         {           g_warning ("AT-SPI: Could not obtain desktop path or name\n");         } Which seems to be triggered by an attempt to register the application to ATK: static gboolean register_application (SpiBridge * app) {   DBusMessage *message;   DBusMessageIter iter;   DBusPendingCall *pending;   g_free (app->desktop_name);   g_free (app->desktop_path);   /* These will be overridden when we get a reply, but in practice these      defaults should always be correct */   app->desktop_name = g_strdup (ATSPI_DBUS_NAME_REGISTRY);   app->desktop_path = g_strdup (ATSPI_DBUS_PATH_ROOT);   message = dbus_message_new_method_call (SPI_DBUS_NAME_REGISTRY,                                           ATSPI_DBUS_PATH_ROOT,                                           ATSPI_DBUS_INTERFACE_SOCKET,                                           "Embed");   dbus_message_iter_init_append (message, &iter);   spi_object_append_reference (&iter, app->root);     if (!dbus_connection_send_with_reply (app->bus, message, &pending, -1)         || !pending)     {         if (pending)           dbus_pending_call_unref (pending);         dbus_message_unref (message);         return FALSE;     }     dbus_pending_call_set_notify (pending, register_reply, app, NULL); It seems to be caused by nobody being available at the ATSPI_DBUS_PATH_ROOT to handle the message. I have not yet been able to figure out what *should* be handling the message.