summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorMike Yuan <me@yhndnzj.com>2023-04-02 18:56:12 +0800
committerLuca Boccassi <luca.boccassi@gmail.com>2023-04-02 16:22:52 +0100
commit4f44d2c4f76922a4f48dd4473e6abaca40d7e555 (patch)
treeca953e895a8466f537cd58c0bd39de624f9daa3e /src/core
parent6cc19afac1332d070d203e12c4f5039c5ea8ae8c (diff)
downloadsystemd-4f44d2c4f76922a4f48dd4473e6abaca40d7e555.tar.gz
core: do early setup check for arguments with '=' too
Follow-up for d2ebd50d7f9740dcf30e84efc75610af173967d2 We now modify our cmdline to use '=' for all arguments, but didn't change early setup check to work with that. So every daemon-reexec does a full setup, thus breaking running user sessions. Fixes #27106
Diffstat (limited to 'src/core')
-rw-r--r--src/core/main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/main.c b/src/core/main.c
index 4668d6bc84..bcc5e15a78 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -2744,7 +2744,7 @@ static bool early_skip_setup_check(int argc, char *argv[]) {
for (int i = 1; i < argc; i++)
if (streq(argv[i], "--switched-root"))
return false; /* If we switched root, don't skip the setup. */
- else if (streq(argv[i], "--deserialize"))
+ else if (startswith(argv[i], "--deserialize"))
found_deserialize = true;
return found_deserialize; /* When we are deserializing, then we are reexecuting, hence avoid the extensive setup */