Bug 236208 - [GTK] D-Bus crash atk-bridge
Summary: [GTK] D-Bus crash atk-bridge
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: Other
Hardware: Unspecified Linux
: P2 Normal
Assignee: Nobody
Depends on:
Reported: 2022-02-06 14:16 PST by kailueke
Modified: 2022-02-15 06:07 PST (History)
14 users (show)

See Also:

Patch (4.50 KB, patch)
2022-02-15 02:45 PST, Carlos Garcia Campos
aperez: review+
aperez: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description kailueke 2022-02-06 14:16:51 PST
It can happen at any time but after it happend it is likely to happen directly again a few seconds after app startup that it crashes with the following error printed on the console:

(WebKitWebProcess:2): dbind-WARNING **: 22:39:12.184: AT-SPI: Error 
retrieving accessibility bus address: 
dbus[10454]: arguments to dbus_message_new_method_call() were incorrect, 
assertion "destination == NULL || _dbus_check_is_valid_bus_name 
(destination)" failed in file ../../../dbus/dbus-message.c line 1364.
This is normally a bug in some application using the D-Bus library.

  D-Bus not built with -rdynamic so unable to print a backtrace

(WebKitWebProcess:2): WPE-FDO-ERROR **: 22:39:16.262: Failed to bind 

Originally reported in
and in https://gitlab.gnome.org/GNOME/epiphany/-/issues/1694
- maybe this even needs to go to the atk lib.

Here is the full backtrace: https://paste.debian.net/1229712
Comment 1 Carlos Garcia Campos 2022-02-15 02:40:04 PST
It seems that for some reason we can end up with an empty string as plug ID and ATK doesn't handle it right. We can validate the plug id returned by ATK and not call BindAccessibilityTree if it's not valid.
Comment 2 Carlos Garcia Campos 2022-02-15 02:45:29 PST
Created attachment 452008 [details]
Comment 3 Adrian Perez 2022-02-15 04:16:09 PST
Comment on attachment 452008 [details]

View in context: https://bugs.webkit.org/attachment.cgi?id=452008&action=review

> Source/WebCore/ChangeLog:8
> +        When a root is unregitered, check first if the registration is still pending to just complete and remove it.

Typo: s/unregitered/unregistered/
Comment 4 Carlos Garcia Campos 2022-02-15 06:07:59 PST
Committed r289804 (247269@trunk): <https://commits.webkit.org/247269@trunk>