mirror of
https://github.com/gnif/LookingGlass.git
synced 2026-08-22 07:01:30 +00:00
Primary frame and pointer workers can still be unwinding an abandoned payload when another thread detects that the primary transport has disconnected. Their fatal paths previously stored SHUTDOWN unconditionally, allowing a stale renderer or transport failure to overwrite RESTART and terminate the client instead of activating the SPICE fallback. Publish RESTART at the beginning of primary-loss handling, before transport bookkeeping, and make worker-local fatal paths transition to SHUTDOWN only while the application is still RUNNING. Global failures and the case where both primary and fallback sessions are lost remain terminal.