diff options
author | Roy Marples <roy@marples.name> | 2007-07-02 22:07:58 +0000 |
---|---|---|
committer | Roy Marples <roy@marples.name> | 2007-07-02 22:07:58 +0000 |
commit | f23b6d0e95346a93db3fbf8dbec300f8e6a7b12a (patch) | |
tree | 6b9cca0209de2a0d2addd07477d8419fe2b5f629 | |
parent | 3a9375c7df490156276ab3e59a27dd7b13902040 (diff) |
Don't wait for services that were inactive, #183667 thanks to Daniel Drake
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/runscript.c | 7 |
2 files changed, 10 insertions, 1 deletions
@@ -1,6 +1,10 @@ # ChangeLog for Gentoo System Intialization ("rc") scripts # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPLv2 + 02 Jul 2007; Roy Marples <uberlord@gentoo.org>: + + Don't wait for services that were inactive, #183667 thanks to Daniel Drake + 30 Jun 2007; Roy Marples <uberlord@gentoo.org>: Don't set an early font if consolefont isn't in a runlevel, #183773. diff --git a/src/runscript.c b/src/runscript.c index 18515372..8bebf746 100644 --- a/src/runscript.c +++ b/src/runscript.c @@ -656,8 +656,13 @@ static void svc_start (bool deps) tmplist = NULL; STRLIST_FOREACH (services, svc, i) { - if (rc_service_state (svc, rc_service_started)) + /* don't wait for services which went inactive but are now in + * starting state */ + if (rc_service_state (svc, rc_service_started) || + (rc_service_state (svc, rc_service_starting) && + rc_service_state(svc, rc_service_wasinactive))) continue; + if (! rc_wait_service (svc)) eerror ("%s: timed out waiting for %s", applet, svc); if (rc_service_state (svc, rc_service_started)) |