Bug 246471

Summary: [GTK] Accessibility API test fails with AT-SPI failing to read sockets not exposed to the SDK
Product: WebKit Reporter: Lauro Moura <lmoura>
Component: AccessibilityAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: andresg_22, bugs-noreply, cgarcia, mcatanzaro, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Lauro Moura 2022-10-13 13:58:54 PDT
Tests affected:

/WebKitGTK/TestWebKitAccessibility
    /webkit/WebKitAccessibility/accessible/basic-hierarchy
    /webkit/WebKitAccessibility/accessible/children-changed
    /webkit/WebKitAccessibility/accessible/attributes

Example log from EWS: https://ews-build.webkit.org/#/builders/34/builds/71271/steps/26/logs/stdio

Sample output:

TEST: /app/webkit/Tools/glib/../../WebKitBuild/Release/bin/TestWebKitAPI/WebKitGTK/TestWebKitAccessibility...
  /webkit/WebKitAccessibility/accessible/basic-hierarchy:             FAIL
GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
dbind-FATAL-WARNING: AT-SPI: Unable to open bus connection: Failed to connect to socket /run/user/104/at-spi2-LB05T1/socket: No such file or directory


When finding the `AtSpiAccessible` for the test application[1], fatal warnings are ignored[2] while getting the child count. This works mostly fine to avoid issues with AT-SPI sockets not exposed to the SDK. But in some cases, the socket check is delayed and a fatal warning is issued as described above. Sometimes, happening even well after returning from the function, inside the actual test code.

[1] https://github.com/WebKit/WebKit/blob/48f8da125ce496a5dbe81cf7b7e06476565b7128/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp#L51
[2] https://github.com/WebKit/WebKit/blob/48f8da125ce496a5dbe81cf7b7e06476565b7128/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp#L57
Comment 1 Radar WebKit Bug Importer 2022-10-13 13:59:07 PDT
<rdar://problem/101142072>
Comment 2 Lauro Moura 2022-10-13 16:35:59 PDT
Gardened in https://commits.webkit.org/255511@main

This seems to have flew under the radar due to infrastructure issues in the post-commit bot, which is currently not running this test.
Comment 3 Michael Catanzaro 2022-10-14 04:50:30 PDT
Hmm, it's similar to https://github.com/WebKit/WebKit/pull/5136, but the sandbox is not enabled for this test, so why doesn't it have full access to the host system?