You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
1018 B
27 lines
1018 B
2 years ago
|
From cffe5d0e781f6fa7f2275b94d2dcc26e00859a78 Mon Sep 17 00:00:00 2001
|
||
|
From: Lennart Poettering <lennart@poettering.net>
|
||
|
Date: Wed, 17 Jul 2019 19:16:33 +0200
|
||
|
Subject: [PATCH] core: never propagate reload failure to service result
|
||
|
|
||
|
Fixes: #11238
|
||
|
(cherry picked from commit d611cfa748aaf600832160132774074e808c82c7)
|
||
|
|
||
|
Resolves: #1735787
|
||
|
---
|
||
|
src/core/service.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/core/service.c b/src/core/service.c
|
||
|
index 8342c131c8..24f167572a 100644
|
||
|
--- a/src/core/service.c
|
||
|
+++ b/src/core/service.c
|
||
|
@@ -3310,7 +3310,7 @@ static void service_sigchld_event(Unit *u, pid_t pid, int code, int status) {
|
||
|
"Control process exited, code=%s status=%i",
|
||
|
sigchld_code_to_string(code), status);
|
||
|
|
||
|
- if (s->result == SERVICE_SUCCESS)
|
||
|
+ if (s->state != SERVICE_RELOAD && s->result == SERVICE_SUCCESS)
|
||
|
s->result = f;
|
||
|
|
||
|
if (s->control_command &&
|