Logout may wait for non-existent shell dialog
The following happened for me:
- Some unsaved document must have been opened (e.g. gedit)
- gnome-shell crashed
- gnome-session did not quit when receiving SIGTERM
- I had to wait 90s before systemd killed gnome-session and I was thrown back to GDM/could log in again
I think the problem is quite obvious … there are or may be a number of problems:
-
show_shell_end_session_dialog
does not check whether it can talk to the shell -
connect_shell_dialog_signals
will not notice the shell disappearing from the bus - The inhibitor should have disappeared. Which in turn should cause
end_session_or_show_shell_dialog
to be called through_disconnect_client
. So the above doesn't fully explain the problem.