diff --git a/src/login/logind-user.c b/src/login/logind-user.c index b87311c0d..ddf19eb0b 100644 --- a/src/login/logind-user.c +++ b/src/login/logind-user.c @@ -629,6 +629,12 @@ int user_check_gc(User *u, bool drop_not_started) { if (u->slice_job || u->service_job) return 1; + if (u->slice && manager_unit_is_active(u->manager, u->slice) != 0) + return 1; + + if (u->service && manager_unit_is_active(u->manager, u->service) != 0) + return 1; + return 0; }