summaryrefslogtreecommitdiff
path: root/src/login/logind-session.c
diff options
context:
space:
mode:
authorColin Guthrie <colin@mageia.org>2012-09-04 01:37:27 +0100
committerLennart Poettering <lennart@poettering.net>2012-09-12 08:19:59 +0200
commit23bd3b6263e4fd9c15cfb6c05e65fa425791374c (patch)
tree5be7f9bfebec5ce2535c0f1a336694696a1b9fe5 /src/login/logind-session.c
parent2dc8f41a2bdcc25e6ec69a99cb6f34615cce59a5 (diff)
logind: Ensure the user, seat and session files are updated when the session is closing.
Diffstat (limited to 'src/login/logind-session.c')
-rw-r--r--src/login/logind-session.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/login/logind-session.c b/src/login/logind-session.c
index 77462a8d15..9740e23a16 100644
--- a/src/login/logind-session.c
+++ b/src/login/logind-session.c
@@ -714,9 +714,11 @@ int session_stop(Session *s) {
seat_set_active(s->seat, NULL);
seat_send_changed(s->seat, "Sessions\0");
+ seat_save(s->seat);
}
user_send_changed(s->user, "Sessions\0");
+ user_save(s->user);
s->started = false;
@@ -870,6 +872,9 @@ void session_remove_fifo(Session *s) {
assert_se(epoll_ctl(s->manager->epoll_fd, EPOLL_CTL_DEL, s->fifo_fd, NULL) == 0);
close_nointr_nofail(s->fifo_fd);
s->fifo_fd = -1;
+
+ session_save(s);
+ user_save(s->user);
}
if (s->fifo_path) {