From: "Christian Ruppert" <idl0r@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/openrc:master commit in: src/rc/
Date: Sat, 31 Dec 2011 02:36:06 +0000 (UTC) [thread overview]
Message-ID: <34b7632d1d2ed38c7251ac8c2869c8fc416a99f5.idl0r@gentoo> (raw)
commit: 34b7632d1d2ed38c7251ac8c2869c8fc416a99f5
Author: Christian Ruppert <idl0r <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 02:35:32 2011 +0000
Commit: Christian Ruppert <idl0r <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 02:35:32 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=34b7632d
Do not exit immediately when a service has been stopped already
The old behaviour was to exit(EXIT_SUCCESS) in case the service has been stopped
already, even if further commands has been passed to the init script
(like zap, start).
So using for example /etc/init.d/foo stop zap start would abort immediately
after "stop" if the service has been stopped already. Though there may be cases
were we need it to proceed with the remaining commands, zap and start in this
case.
This patch fixes the behaviour to continue and proceed with the remaining
commands whenever necessary.
X-Gentoo-Bug: 371845
X-Gentoo-Bug-URL: https://bugs.gentoo.org/371845
---
src/rc/runscript.c | 16 +++++++++++-----
1 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/src/rc/runscript.c b/src/rc/runscript.c
index cd53b34..2f66971 100644
--- a/src/rc/runscript.c
+++ b/src/rc/runscript.c
@@ -821,7 +821,7 @@ svc_start(void)
svc_start_real();
}
-static void
+static int
svc_stop_check(RC_SERVICE *state)
{
*state = rc_service_state(service);
@@ -848,7 +848,7 @@ svc_stop_check(RC_SERVICE *state)
if (*state & RC_SERVICE_STOPPED) {
ewarn("WARNING: %s is already stopped", applet);
- exit(EXIT_SUCCESS);
+ return 1;
}
rc_service_mark(service, RC_SERVICE_STOPPING);
@@ -861,6 +861,8 @@ svc_stop_check(RC_SERVICE *state)
else if (rc_service_in_runlevel(service, RC_LEVEL_BOOT))
ewarn("WARNING: you are stopping a boot service");
}
+
+ return 0;
}
static void
@@ -986,7 +988,7 @@ svc_stop_real(void)
rc_plugin_run(RC_HOOK_SERVICE_STOP_OUT, applet);
}
-static void
+static int
svc_stop(void)
{
RC_SERVICE state;
@@ -995,13 +997,16 @@ svc_stop(void)
if (dry_run)
einfon("stop:");
else
- svc_stop_check(&state);
+ if (svc_stop_check(&state) == 1)
+ return 1; /* Service has been stopped already */
if (deps)
svc_stop_deps(state);
if (dry_run)
printf(" %s\n", applet);
else
svc_stop_real();
+
+ return 0;
}
static void
@@ -1351,7 +1356,8 @@ runscript(int argc, char **argv)
}
if (deps && in_background)
get_started_services();
- svc_stop();
+ if (svc_stop() == 1)
+ continue; /* Service has been stopped already */
if (deps) {
if (!in_background &&
!rc_runlevel_stopping() &&
next reply other threads:[~2011-12-31 2:36 UTC|newest]
Thread overview: 257+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-31 2:36 Christian Ruppert [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-11-06 3:38 [gentoo-commits] proj/openrc:master commit in: src/rc/ William Hubbs
2018-11-06 3:38 William Hubbs
2018-11-02 23:24 William Hubbs
2018-11-02 23:24 William Hubbs
2018-10-15 16:52 William Hubbs
2018-10-15 16:52 William Hubbs
2018-10-09 16:35 William Hubbs
2018-10-06 18:03 William Hubbs
2018-10-06 18:03 William Hubbs
2018-06-29 20:32 William Hubbs
2018-06-28 18:03 William Hubbs
2018-06-20 14:38 William Hubbs
2018-06-19 23:00 William Hubbs
2018-06-19 23:00 William Hubbs
2018-06-19 22:07 William Hubbs
2018-06-19 21:34 William Hubbs
2018-06-19 21:34 William Hubbs
2018-06-19 21:34 William Hubbs
2018-06-19 21:34 William Hubbs
2018-06-14 19:56 William Hubbs
2018-06-13 21:28 William Hubbs
2018-05-22 22:12 William Hubbs
2018-05-22 22:12 William Hubbs
2018-05-22 22:12 William Hubbs
2018-05-15 22:11 William Hubbs
2018-05-15 22:11 William Hubbs
2018-05-15 0:11 William Hubbs
2018-05-15 0:11 William Hubbs
2018-05-11 18:19 William Hubbs
2018-05-09 22:35 William Hubbs
2018-05-07 23:21 William Hubbs
2018-05-07 23:21 William Hubbs
2018-03-15 1:43 William Hubbs
2018-03-12 2:43 William Hubbs
2018-02-28 18:45 William Hubbs
2018-02-26 20:34 William Hubbs
2018-02-26 19:15 William Hubbs
2018-02-26 19:15 William Hubbs
2018-02-26 18:23 William Hubbs
2018-02-24 23:03 William Hubbs
2018-02-24 23:03 William Hubbs
2018-02-22 22:17 William Hubbs
2018-02-22 18:55 William Hubbs
2018-02-22 0:17 William Hubbs
2018-02-22 0:17 William Hubbs
2018-02-22 0:17 William Hubbs
2018-02-21 19:50 William Hubbs
2018-02-20 22:36 William Hubbs
2018-02-20 22:36 William Hubbs
2018-02-20 22:36 William Hubbs
2018-02-16 20:07 William Hubbs
2018-02-16 20:07 William Hubbs
2018-02-16 20:07 William Hubbs
2018-02-14 23:37 William Hubbs
2018-02-14 23:37 William Hubbs
2018-01-24 23:44 William Hubbs
2018-01-23 23:08 William Hubbs
2018-01-16 19:36 William Hubbs
2018-01-16 19:14 William Hubbs
2018-01-09 23:35 William Hubbs
2017-11-29 21:12 William Hubbs
2017-11-28 23:17 William Hubbs
2017-11-28 23:17 William Hubbs
2017-11-07 21:33 William Hubbs
2017-11-07 21:33 William Hubbs
2017-11-07 21:33 William Hubbs
2017-11-07 21:33 William Hubbs
2017-10-26 22:01 William Hubbs
2017-10-26 18:58 William Hubbs
2017-10-26 18:58 William Hubbs
2017-10-26 18:58 William Hubbs
2017-10-25 20:10 William Hubbs
2017-10-18 23:09 William Hubbs
2017-10-05 23:31 William Hubbs
2017-09-22 22:25 William Hubbs
2017-09-18 18:31 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-15 18:31 William Hubbs
2017-09-06 22:33 William Hubbs
2017-08-25 16:48 William Hubbs
2017-08-24 16:45 William Hubbs
2017-07-24 23:27 William Hubbs
2017-06-12 15:41 William Hubbs
2017-06-12 15:41 William Hubbs
2017-06-07 16:34 William Hubbs
2017-05-30 21:25 William Hubbs
2017-05-30 21:25 William Hubbs
2017-05-22 16:30 William Hubbs
2017-05-19 23:30 William Hubbs
2017-05-16 0:00 William Hubbs
2017-05-16 0:00 William Hubbs
2017-05-12 2:42 William Hubbs
2017-05-12 2:42 William Hubbs
2017-05-12 2:42 William Hubbs
2017-05-11 16:38 William Hubbs
2017-04-29 22:56 William Hubbs
2017-04-29 22:56 William Hubbs
2017-04-29 22:56 William Hubbs
2017-04-29 14:44 William Hubbs
2017-04-17 17:24 William Hubbs
2017-04-13 17:56 William Hubbs
2017-04-07 12:43 William Hubbs
2017-04-03 15:45 William Hubbs
2017-01-25 23:58 William Hubbs
2017-01-05 0:24 William Hubbs
2017-01-04 23:23 William Hubbs
2016-11-30 22:49 William Hubbs
2016-11-03 16:13 William Hubbs
2016-10-24 17:48 William Hubbs
2016-10-24 17:43 William Hubbs
2016-10-11 15:31 William Hubbs
2016-09-30 22:10 William Hubbs
2016-09-19 17:10 William Hubbs
2016-09-16 13:58 William Hubbs
2016-09-16 13:58 William Hubbs
2016-08-25 16:17 William Hubbs
2016-07-25 18:54 William Hubbs
2016-07-16 20:17 William Hubbs
2016-07-14 17:25 William Hubbs
2016-06-10 22:45 William Hubbs
2016-05-24 16:43 William Hubbs
2016-05-24 16:43 William Hubbs
2016-05-13 18:00 William Hubbs
2016-05-13 17:12 William Hubbs
2016-05-04 23:24 William Hubbs
2016-04-11 16:18 William Hubbs
2016-02-12 18:58 William Hubbs
2016-01-22 18:53 William Hubbs
2016-01-20 17:29 William Hubbs
2016-01-19 6:12 William Hubbs
2016-01-19 6:12 William Hubbs
2016-01-19 6:12 William Hubbs
2016-01-14 17:33 William Hubbs
2016-01-14 17:33 William Hubbs
2016-01-14 17:33 William Hubbs
2016-01-14 17:33 William Hubbs
2016-01-12 20:12 William Hubbs
2015-12-06 0:14 William Hubbs
2015-12-02 21:46 William Hubbs
2015-10-13 13:36 William Hubbs
2015-10-05 15:27 William Hubbs
2015-10-04 20:37 William Hubbs
2015-09-18 17:45 William Hubbs
2015-08-02 14:12 William Hubbs
2015-07-23 17:48 William Hubbs
2015-04-24 18:13 William Hubbs
2015-03-25 13:36 William Hubbs
2015-03-25 6:10 William Hubbs
2015-03-25 4:38 William Hubbs
2015-03-24 20:53 William Hubbs
2015-03-24 20:40 William Hubbs
2015-02-19 21:16 William Hubbs
2015-02-15 22:15 William Hubbs
2015-02-15 22:10 William Hubbs
2015-01-22 18:54 William Hubbs
2014-09-20 21:52 William Hubbs
2014-08-22 19:10 William Hubbs
2014-08-11 18:18 ` William Hubbs
2014-08-22 19:10 William Hubbs
2014-07-25 16:06 ` William Hubbs
2014-07-28 15:51 William Hubbs
2014-08-22 19:10 ` William Hubbs
2014-07-19 18:06 William Hubbs
2014-07-18 4:47 William Hubbs
2014-07-16 23:01 William Hubbs
2014-07-16 23:01 William Hubbs
2014-07-16 19:48 William Hubbs
2014-07-16 19:17 William Hubbs
2014-07-16 18:14 William Hubbs
2014-07-13 19:16 William Hubbs
2014-07-11 20:24 William Hubbs
2014-07-11 20:19 William Hubbs
2014-01-18 20:02 William Hubbs
2013-12-13 18:20 William Hubbs
2013-12-13 18:05 William Hubbs
2013-12-01 17:25 William Hubbs
2013-10-12 14:50 William Hubbs
2013-10-06 17:36 William Hubbs
2013-10-04 16:23 William Hubbs
2013-09-24 6:52 William Hubbs
2013-09-23 22:59 William Hubbs
2013-09-23 18:38 William Hubbs
2013-09-23 18:38 William Hubbs
2013-09-04 0:46 William Hubbs
2013-08-26 22:26 William Hubbs
2013-08-26 20:59 William Hubbs
2013-07-23 23:01 William Hubbs
2013-07-16 18:56 William Hubbs
2013-05-01 23:24 William Hubbs
2013-02-25 20:50 William Hubbs
2013-02-25 20:50 William Hubbs
2013-02-25 20:50 William Hubbs
2013-02-25 20:50 William Hubbs
2013-02-15 19:35 William Hubbs
2012-10-27 18:12 William Hubbs
2012-10-24 17:38 William Hubbs
2012-10-17 23:48 William Hubbs
2012-10-09 23:56 William Hubbs
2012-10-09 21:50 William Hubbs
2012-09-14 21:00 Christian Ruppert
2012-09-12 19:36 Christian Ruppert
2012-09-12 19:00 Christian Ruppert
2012-08-18 22:26 Christian Ruppert
2012-08-18 21:26 Christian Ruppert
2012-05-23 23:31 Mike Frysinger
2012-05-16 22:16 Mike Frysinger
2012-05-06 5:16 Mike Frysinger
2012-04-24 3:32 Christian Ruppert
2012-02-24 2:38 William Hubbs
2012-02-21 2:09 William Hubbs
2012-02-21 1:08 Jory Pratt
2012-02-12 1:23 Christian Ruppert
2012-02-10 23:25 Christian Ruppert
2012-01-31 22:59 William Hubbs
2012-01-28 18:05 Christian Ruppert
2012-01-28 15:45 Christian Ruppert
2012-01-24 18:41 Christian Ruppert
2012-01-23 10:27 Robin H. Johnson
2012-01-23 10:27 Robin H. Johnson
2012-01-23 5:27 Robin H. Johnson
2012-01-22 20:46 William Hubbs
2011-12-30 15:03 Christian Ruppert
2011-12-30 15:03 Christian Ruppert
2011-12-29 12:59 Christian Ruppert
2011-12-29 2:18 Christian Ruppert
2011-12-29 2:10 Christian Ruppert
2011-12-29 1:50 Christian Ruppert
2011-12-11 20:43 William Hubbs
2011-11-19 8:11 Mike Frysinger
2011-11-19 8:11 Mike Frysinger
2011-11-19 8:11 Mike Frysinger
2011-11-17 22:10 William Hubbs
2011-11-15 21:26 William Hubbs
2011-11-09 5:10 Mike Frysinger
2011-09-08 17:22 Christian Ruppert
2011-09-08 17:22 Christian Ruppert
2011-09-02 16:47 William Hubbs
2011-09-01 22:14 William Hubbs
2011-07-26 21:59 William Hubbs
2011-07-20 19:40 William Hubbs
2011-07-05 22:52 Christian Ruppert
2011-07-04 22:54 Christian Ruppert
2011-06-30 18:21 Christian Ruppert
2011-06-27 21:21 Christian Ruppert
2011-06-05 14:52 Christian Ruppert
2011-05-28 16:12 Mike Frysinger
2011-05-28 15:42 Mike Frysinger
2011-05-23 19:25 William Hubbs
2011-02-16 15:02 William Hubbs
2011-02-15 0:50 William Hubbs
2011-02-07 8:30 William Hubbs
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=34b7632d1d2ed38c7251ac8c2869c8fc416a99f5.idl0r@gentoo \
--to=idl0r@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox