From: Mike Yuan Date: Tue, 28 May 2024 16:43:06 +0000 (+0800) Subject: logind-user: check linger file in user_wants_service_manager too X-Git-Tag: v256-rc4~96^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F33066%2Fhead;p=thirdparty%2Fsystemd.git logind-user: check linger file in user_wants_service_manager too Follow-up for 5099a50d4398e190387d204f5df81cc176bd33e2 Fixes #33005 --- diff --git a/src/login/logind-user.c b/src/login/logind-user.c index e51ab1cd19e..c63d214146c 100644 --- a/src/login/logind-user.c +++ b/src/login/logind-user.c @@ -371,13 +371,16 @@ static int user_start_runtime_dir(User *u) { return 0; } -static bool user_wants_service_manager(User *u) { +static bool user_wants_service_manager(const User *u) { assert(u); LIST_FOREACH(sessions_by_user, s, u->sessions) if (SESSION_CLASS_WANTS_SERVICE_MANAGER(s->class)) return true; + if (user_check_linger_file(u) > 0) + return true; + return false; }