GNOME Bugzilla – Bug 579064
doesn't emit the SessionOver signal
Last modified: 2021-06-14 18:20:32 UTC
From https://bugzilla.redhat.com/show_bug.cgi?id=495904 gnome-session doesn't send the SessionOver signal at all. It's never emitted in gsm-manager.c at all. If gnome-session emitted that, it would be a trivial patch to gnome-power-manager to exit when this signal is emitted. Reassigning, and then when g-s is fixed we can trivially patch g-p-m.
Even if SessionOver turns out to not be the right signal to use for g-p-m, we should still - implement the SessionRunning / SessionOver signals or remove them from the interface - update the spec to include the signals
Created attachment 140651 [details] [review] Emit session-over signal in PHASE_END_SESSION Attached patch fixes this bug for the simple case of an app being able to exit cleanly without having to EggSMClient. I've added the emission to the PHASE_END_SESSION phase. Don't have an exceptional reason for not putting it in PHASE_EXIT, other than I assume this way gives the listening apps a bit more time to exit cleanly.
I would actually put it before do_phase_end_session(). This way we send the signal, and then tell apps "really, good bye". FWIW, there's no guarantee that there will be no interaction with the user afterwards at the moment. It's possible that you'll get a PK prompt for reboot/shutdown, depending on how ConsoleKit is configured.
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version of gnome-session, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/gnome-session/-/issues/ Thank you for your understanding and your help.