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:
parent
ed6556920c
commit
38fdcbedd1
@ -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;
|
||||||
|
Loading…
Reference in New Issue
Block a user