Skip to content

Process dies when an AT-SPI screen reader is advertised (Godot 4.7 AccessKit panic) #541

Description

@zhinu

Environment

  • OpenGamepadUI v0.46.0 (opengamepadui-bin on Arch/CachyOS), the released binary
  • Engine: 4.7.1.stable.official
  • gamescope, NVIDIA RTX 5070 Ti, niri as the outer compositor

Symptom

OGUI exits mid-session; the last thing on stdout is:

thread '<unnamed>' (566358) panicked at /home/runner/.cargo/registry/src/index.crates.io-.../accesskit_unix-0.21.0/src/context.rs:61:78:
called `Result::unwrap()` on an `Err` value: InterfaceNotFound
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[gamescope] [Info]  launch: Primary child shut down!

Reproduction

  1. gsettings set org.gnome.desktop.a11y.applications screen-reader-enabled true (this is what at-spi-bus-launcher exposes as org.a11y.Status.ScreenReaderEnabled; on my machine it was stuck true with no screen reader installed, which is how I hit this)
  2. Start OGUI and use it for a while.

The panic is in the accesskit event-loop thread, and it takes the whole process down.

Confirmation that accessibility is the trigger

With debug/settings/stdout/verbose_stdout on and the screen reader flag set:

Accessibility: AccessKit driver loaded.
Accessibility: window 0 adapter created.
Accessibility: window 0 adapter activated.

With accessibility/general/accessibility_driver="dummy" those lines never appear and the crash is gone. Everything else about the run is identical.

Workaround

An override.cfg next to the executable:

[accessibility]

general/accessibility_driver="dummy"
general/accessibility_support=2

Suggestion

The underlying unwrap() is accesskit's, but since a panic there is fatal for OGUI, it might be worth shipping the project setting in the export (or defaulting accessibility_support to disabled) until it is fixed upstream.


Disclaimer: this report was written by Claude (AI) and verified on my setup. Versions, log excerpts and the reproduction steps below are all from a real run on my machine.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions