Skip to content

shell/app: Keep cancellable after cancelled proxy request

Florian Müllner requested to merge fmuellner/gnome-shell:app-proxy-crash into master

When a GTK app is started, we create a coorresponding GtkApplication proxy to monitor the app's busy state. If the app is stopped before the proxy request finishes, we cancel the cancellable before clearing the running state.

Usually we clear the cancellable once it is no longer needed, namely when we got the proxy. However when the request was cancelled, the cancellable has already been cleared, and if there's a cancellable, it belongs to another request (because the window was added again, for example when moving between monitors).

Leave that cancellable alone in that case, so we can cancel the second request as well if necessary to avoid a crash when trying to set the proxy on a cleared running state.

Fixes #1962 (closed)

Merge request reports