chiark / gitweb /
logind: make sure to terminate systemd user on logouts
[elogind.git] / src / login / logind-user.c
index ac4a651f367323d8b876c2afb7c831dc35f9ba3c..4af0e90c2232d36d9c790085151d5765166eb09f 100644 (file)
@@ -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)