aboutsummaryrefslogtreecommitdiff
path: root/src/progman.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2016-02-17 08:26:42 +0200
committerSergey Poznyakoff <gray@gnu.org>2016-02-17 08:30:12 +0200
commite430f586ccf6621136089fb1d9d865ce1a351360 (patch)
treeaf09d48b994a55752f210b29cb73f147e5b7f728 /src/progman.c
parentbd8bd1640c72ceefd87b46a7a3d378c78c9081f5 (diff)
downloadpies-e430f586ccf6621136089fb1d9d865ce1a351360.tar.gz
pies-e430f586ccf6621136089fb1d9d865ce1a351360.tar.bz2
Fix state transitions
* src/pies.c (main): Move call to pies_schedule_children to inittrans. * src/progman.c (progman_cleanup): Minor change. * src/sysvinit.c (enablecomp): Change prog status to stopped when leaving its runlevel. (sysvinit_set_runlevel): Raise SIGALRM instead of calling inittrans directly. (inittrans): Fix wait logic.
Diffstat (limited to 'src/progman.c')
-rw-r--r--src/progman.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/progman.c b/src/progman.c
index d6929d6..9641629 100644
--- a/src/progman.c
+++ b/src/progman.c
@@ -2331,9 +2331,12 @@ progman_cleanup (int expect_term)
sysvinit_acct (SYSV_ACCT_PROC_STOP, "", prog_tag (prog),
pid, "");
prog->v.p.status = status_finished;
+
if (prog->v.p.wait)
- pies_schedule_children (PIES_CHLD_WAKEUP);
- prog->v.p.wait = 0;
+ {
+ pies_schedule_children (PIES_CHLD_WAKEUP);
+ prog->v.p.wait = 0;
+ }
}
else
{

Return to:

Send suggestions and report system problems to the System administrator.