aboutsummaryrefslogtreecommitdiff
path: root/src/progman.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2016-01-31 16:40:27 +0200
committerSergey Poznyakoff <gray@gnu.org>2016-01-31 16:40:27 +0200
commitd9d267052215f223897af18310e4adee310308e7 (patch)
tree6b6f9eb636975f5721e00d2d71007185fa5b2fbf /src/progman.c
parent6f9f2fd7a6952b544dccbf0bdc7f9c312f602afe (diff)
downloadpies-d9d267052215f223897af18310e4adee310308e7.tar.gz
pies-d9d267052215f223897af18310e4adee310308e7.tar.bz2
Support sysvinit ondemand components.
* src/ctl.c (fun_start): Handle status_finished same as status_sleeping (for restarting ondemand components). * src/progman.c: Respawn ondemand components. * src/sysvinit.c (enablecomp): Handle pies_comp_ondemand. (sysvinit_demand): New function. (sysvinit_fifo_handler): Handle ondemand runlevels. (inittab_parse): Support "off" fields. Convert runlevels to upper case.
Diffstat (limited to 'src/progman.c')
-rw-r--r--src/progman.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/progman.c b/src/progman.c
index 4ca3824..020dccd 100644
--- a/src/progman.c
+++ b/src/progman.c
@@ -303,9 +303,9 @@ progman_waiting_p ()
{
if (IS_COMPONENT (prog) && prog->v.p.wait && prog->pid > 0)
{
- debug(1, ("%s: waiting for %s (%lu)",
- __FUNCTION__, prog_tag (prog),
- (unsigned long) prog->pid));
+ debug (3, ("%s: waiting for %s (%lu)",
+ __FUNCTION__, prog_tag (prog),
+ (unsigned long) prog->pid));
return 1;
}
}
@@ -2305,7 +2305,8 @@ progman_cleanup (int expect_term)
}
else
{
- if (prog->v.p.comp->mode >= pies_mark_sysvinit)
+ if (prog->v.p.comp->mode >= pies_mark_sysvinit
+ && prog->v.p.comp->mode != pies_comp_ondemand)
{
sysvinit_acct (SYSV_ACCT_PROC_STOP, "", prog_tag (prog),
pid, "");

Return to:

Send suggestions and report system problems to the System administrator.