1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-07 09:56:51 +03:00

logind: create the session fifo before saving the session file

If the session fifo is not created the session state written to
the session file is "closing". This caused the lock screen in
gnome-shell to go into a loop trying to find the active session.

The problem was introduced in the sd-bus port in
cc37738108

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=71525
This commit is contained in:
Thomas Hindoe Paaboel Andersen 2013-11-13 18:06:34 +01:00
parent ed6556920c
commit 38fdcbedd1

View File

@ -644,14 +644,14 @@ int session_send_create_reply(Session *s, sd_bus_error *error) {
if (error) if (error)
return sd_bus_reply_method_error(s->manager->bus, c, error); return sd_bus_reply_method_error(s->manager->bus, c, error);
/* Update the session state file before we notify the client
* about the result. */
session_save(s);
fifo_fd = session_create_fifo(s); fifo_fd = session_create_fifo(s);
if (fifo_fd < 0) if (fifo_fd < 0)
return fifo_fd; return fifo_fd;
/* Update the session state file before we notify the client
* about the result. */
session_save(s);
p = session_bus_path(s); p = session_bus_path(s);
if (!p) if (!p)
return -ENOMEM; return -ENOMEM;