diff options
Diffstat (limited to 'src/login/logind-user.c')
-rw-r--r-- | src/login/logind-user.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/login/logind-user.c b/src/login/logind-user.c index ac4a651f36..4af0e90c22 100644 --- a/src/login/logind-user.c +++ b/src/login/logind-user.c @@ -499,6 +499,12 @@ int user_stop(User *u, bool force) { int r = 0, k; assert(u); + /* Stop jobs have already been queued */ + if (u->stopping) { + user_save(u); + return r; + } + LIST_FOREACH(sessions_by_user, s, u->sessions) { k = session_stop(s, force); if (k < 0) |