X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flogin%2Flogind-user.c;h=4af0e90c2232d36d9c790085151d5765166eb09f;hb=b58b227a53ee2b9feba8433a1558b51132ffb18b;hp=ac4a651f367323d8b876c2afb7c831dc35f9ba3c;hpb=24fb111207566f3bb33c6438714fb5df44ed4305;p=elogind.git diff --git a/src/login/logind-user.c b/src/login/logind-user.c index ac4a651f3..4af0e90c2 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)