daandemeyer / rpms / systemd

Forked from rpms/systemd 2 years ago
Clone
803fb7
From 94fec84897ab40bf2bc92f0d395a93ecac1b45be Mon Sep 17 00:00:00 2001
803fb7
From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Nykr=C3=BDn?= <lnykryn@redhat.com>
803fb7
Date: Wed, 3 Aug 2016 17:08:37 +0200
803fb7
Subject: [PATCH] systemctl: consider service running only when it is in active
803fb7
 or reloading state (#3874)
803fb7
803fb7
Otherwise for example services that are failing on start and have Restart=on-failure
803fb7
and bigger RestartSec systemctl status will return 0.
803fb7
803fb7
Fixes: #3864
803fb7
Cherry-picked from: 7f5da8bd4fb1ba49ba40195a74ca76bb5d4d1f81
803fb7
Resolves: #1362461
803fb7
---
803fb7
 src/systemctl/systemctl.c | 2 +-
803fb7
 1 file changed, 1 insertion(+), 1 deletion(-)
803fb7
803fb7
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
803fb7
index 93b7a193b..b7496c006 100644
803fb7
--- a/src/systemctl/systemctl.c
803fb7
+++ b/src/systemctl/systemctl.c
803fb7
@@ -4339,7 +4339,7 @@ static int show_one(
803fb7
         else if (streq(verb, "status")) {
803fb7
                 print_status_info(&info, ellipsized);
803fb7
 
803fb7
-                if (info.active_state && STR_IN_SET(info.active_state, "inactive", "failed"))
803fb7
+                if (info.active_state && !STR_IN_SET(info.active_state, "active", "reloading"))
803fb7
                         r = EXIT_PROGRAM_NOT_RUNNING;
803fb7
                 else
803fb7
                         r = EXIT_PROGRAM_RUNNING_OR_SERVICE_OK;