gnome-shell/js
Philip Withnall 5f223e0bd8 polkitAgent: Disconnect session signal handlers when destroying session
Otherwise the session could outlive the dialogue, emit a subsequent
signal, and its callback would reference finalised objects/widgets from
the dialogue. The PolkitSession object is implemented by
libpolkit-gobject, so we have no guarantees about its reference counting
— the session object could keep itself alive in another thread, or be a
singleton. In all likelihood, the session hangs around for longer than
the dialogue due to differences in when the two objects are garbage
collected.

This can be triggered by running `pkexec true` from a gnome-terminal
window, then calling `pkill pkexec` from another terminal (on a
different VT or via SSH). This causes the dialogue to be cancelled by
polkitd.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/357
2019-01-24 14:48:48 +00:00
..
extensionPrefs dbus: Move all interface descriptions into the resource 2018-09-17 07:34:49 +00:00
gdm cleanup: Remove obsolete Lang imports 2019-01-22 21:33:46 +00:00
misc cleanup: Remove obsolete Lang imports 2019-01-22 21:33:46 +00:00
perf scripting: Fix argument list of createTestWindow() 2018-04-25 23:47:06 +02:00
portalHelper dbus: Move all interface descriptions into the resource 2018-09-17 07:34:49 +00:00
ui polkitAgent: Disconnect session signal handlers when destroying session 2019-01-24 14:48:48 +00:00
js-resources.gresource.xml Add app introspection API 2019-01-09 10:13:45 +01:00
meson.build build: Use dedicated resources for helper programs 2018-08-14 17:28:04 +00:00
portal-resources.gresource.xml build: Include params.js in portal-helper gresources 2018-10-23 15:38:31 +00:00
prefs-resources.gresource.xml build: Use dedicated resources for helper programs 2018-08-14 17:28:04 +00:00