X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogind-user.c;h=177e88200a9f49d4309a1dd621eb496faffe2aa5;hp=dff317e6bda267323dc97ce90b0b1465f39f364c;hb=7f7bb9467931e855cdf5ec46e53c8eb46aa778f5;hpb=4d6d6518c301c844be59c1b3a0d2092a3218572f diff --git a/src/logind-user.c b/src/logind-user.c index dff317e6b..177e88200 100644 --- a/src/logind-user.c +++ b/src/logind-user.c @@ -94,6 +94,9 @@ int user_save(User *u) { assert(u); assert(u->state_file); + if (!u->started) + return 0; + r = safe_mkdir("/run/systemd/users", 0755, 0, 0); if (r < 0) goto finish; @@ -282,13 +285,13 @@ int user_start(User *u) { if (r < 0) return r; - /* Save new user data */ - user_save(u); - dual_timestamp_get(&u->timestamp); u->started = true; + /* Save new user data */ + user_save(u); + user_send_signal(u, true); return 0;