From bca080531147e1452480863ad4d69cf4c040ef70 Mon Sep 17 00:00:00 2001 From: Mike Yuan Date: Wed, 18 Oct 2023 23:29:00 +0800 Subject: [PATCH] core/service: check error first and log about errno Follow-up for becdfcb9f1cb555c50dcfe51894cb0b155f7f01e --- src/core/service.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core/service.c b/src/core/service.c index 02a35bb4ffd..54090251a90 100644 --- a/src/core/service.c +++ b/src/core/service.c @@ -1074,10 +1074,10 @@ static int service_is_suitable_main_pid(Service *s, PidRef *pid, int prio) { return log_unit_full_errno(UNIT(s), prio, SYNTHETIC_ERRNO(EPERM), "New main PID "PID_FMT" is the control process, refusing.", pid->pid); r = pidref_is_alive(pid); + if (r < 0) + return log_unit_full_errno(UNIT(s), prio, r, "Failed to check if main PID "PID_FMT" exists or is a zombie: %m", pid->pid); if (r == 0) return log_unit_full_errno(UNIT(s), prio, SYNTHETIC_ERRNO(ESRCH), "New main PID "PID_FMT" does not exist or is a zombie.", pid->pid); - if (r < 0) - return log_unit_full_errno(UNIT(s), prio, r, "Failed to check if main PID "PID_FMT" exists or is a zombie.", pid->pid); owner = manager_get_unit_by_pidref(UNIT(s)->manager, pid); if (owner == UNIT(s)) { -- 2.47.3