summary refs log tree commit diff
diff options
context:
space:
mode:
-rwxr-xr-xetc/debian/32
-rw-r--r--man/chpst.83
-rw-r--r--package/CHANGES2
-rw-r--r--src/runsv.c13
4 files changed, 17 insertions, 3 deletions
diff --git a/etc/debian/3 b/etc/debian/3
index 6777be3..e014e13 100755
--- a/etc/debian/3
+++ b/etc/debian/3
@@ -4,7 +4,7 @@ exec 2>&1
 PATH=/command:/sbin:/bin:/usr/sbin:/usr/bin
 
 LAST=0
-test -r /etc/runit/reboot && LAST=6
+test -x /etc/runit/reboot && LAST=6
 
 echo 'Waiting for getties to stop...'
 svwaitdown -xk -t14 /var/service/getty-*
diff --git a/man/chpst.8 b/man/chpst.8
index f325c7c..4c05f57 100644
--- a/man/chpst.8
+++ b/man/chpst.8
@@ -138,7 +138,8 @@ bytes.
 .B \-c \fIbytes
 limit core size.
 Limit the core file size to
-.I bytes bytes.
+.I bytes
+bytes.
 .TP
 .B \-v
 verbose.
diff --git a/package/CHANGES b/package/CHANGES
index 4f87c33..4ea5e04 100644
--- a/package/CHANGES
+++ b/package/CHANGES
@@ -1,4 +1,6 @@
   * doc/runscripts: add pppd run script (with chpst) next to the ppp one.
+  * man/chpst.8: typo.
+  * etc/debian/3: test -r -> test -x (thx Alejandro Mery).
 
 runit 0.12.0
 Wed, 29 Oct 2003 18:27:48 +0000
diff --git a/src/runsv.c b/src/runsv.c
index 2d96e8b..c5a2004 100644
--- a/src/runsv.c
+++ b/src/runsv.c
@@ -465,34 +465,45 @@ int main(int argc, char **argv) {
       if (child == svd[0].pid) {
 	svd[0].pid =0;
 	pidchanged =1;
+	svd[0].state =S_DOWN;
+	svd[0].ctrl &=~C_TERM;
+	taia_now(&svd[0].start);
 	if (svd[0].state != S_FINISH)
 	  if ((fd =open_read("finish")) != -1) {
 	    close(fd);
 	    svd[0].state =S_FINISH;
-	    startservice(&svd[0]);
+	    //	    startservice(&svd[0]);
+	    //	    svd[0].want =W_UP;
 	    update_status(&svd[0]);
 	    break;
 	  }
+	/*
 	svd[0].state =S_DOWN;
 	svd[0].ctrl &=~C_TERM;
 	taia_now(&svd[0].start);
+	*/
 	update_status(&svd[0]);
+	/*
 	if (svd[0].want == W_UP) {
 	  startservice(&svd[0]);
 	  break;
 	}
+	*/
       }
       if (haslog) {
 	if (child == svd[1].pid) {
 	  svd[1].pid =0;
 	  pidchanged =1;
 	  svd[1].state =S_DOWN;
+	  svd[1].ctrl &=~C_TERM;
 	  taia_now(&svd[1].start);
 	  update_status(&svd[1]);
+	  /*
 	  if (svd[1].want == W_UP) {
 	    startservice(&svd[1]);
 	    break;
 	  }
+	  */
 	}
       }
     }