Forum Discussion

ProfPistachio's avatar
ProfPistachio
Honored Guest
2 months ago

BUG: OpenXR Session State flow (Pausing/Resuming) broken on v77

About 80% of the time, Pausing / Resuming my application results in the runtime:

- Failing to send a XR_TYPE_EVENT_DATA_SESSION_STATE_CHANGED event
- The application thinking it's still VISIBLE not FOCUSED and not simulating / accepting input
- The system menu button becoming unresponsive

This leaves the headset in a broken state where the game renders, the menu is closed, and all inputs are ignored. It can only be fixed by:

- restarting the headset
- tapping the headset to force it into passthrough, which restores controller input, at which point the application can be reliably resumed via the Resume button in the system menu

I have observed this bug across multiple headsets on an identical codebase, it was not present in previous OS versions, appeared on one headset as it updated, and now has appeared on another headset as it has updated.

There are no mitigations available for this bug, the application cannot proactively query session state to mitigate the runtime dropping the event, xrPollEvents is the only mechanism to get session state.

No RepliesBe the first to reply