core: never propagate reload failure to service result
authorLennart Poettering <lennart@poettering.net>
Wed, 17 Jul 2019 17:16:33 +0000 (19:16 +0200)
committerMichael Biebl <biebl@debian.org>
Thu, 29 Aug 2019 14:18:18 +0000 (15:18 +0100)
Fixes: #11238
(cherry picked from commit d611cfa748aaf600832160132774074e808c82c7)

Gbp-Pq: Name core-never-propagate-reload-failure-to-service-result.patch

src/core/service.c

index 02899901f7b84107d211ff16741f836221d9b10f..b6827e94a77710f05a4cd3e735445e9a33a3159e 100644 (file)
@@ -3372,7 +3372,7 @@ static void service_sigchld_event(Unit *u, pid_t pid, int code, int status) {
                                 service_exec_command_to_string(s->control_command_id),
                                 code, status);
 
-                if (s->result == SERVICE_SUCCESS)
+                if (s->state != SERVICE_RELOAD && s->result == SERVICE_SUCCESS)
                         s->result = f;
 
                 if (s->control_command &&