summaryrefslogtreecommitdiff
path: root/etc/rc.d
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@cvs.openbsd.org>2011-10-09 16:46:56 +0000
committerIngo Schwarze <schwarze@cvs.openbsd.org>2011-10-09 16:46:56 +0000
commitf69dddbdb4dc8b35eddd78677164d4280092188d (patch)
tree21afa8e551fc7a96ecef9b3df3ba741bcef75507 /etc/rc.d
parentb28b74f31c5269285fa0fe39f0ace198ff21e0f4 (diff)
When the _RC_RUNFILE (by some ill chance) happened to be empty or
reading it failed, ${pexp} ended up as the empty string and the script would send SIGTERM to init(1), which was really inconvenient. Fix that by never allowing pexp to become empty. My patch considerably simplified by and ok ajacoutot@.
Diffstat (limited to 'etc/rc.d')
-rw-r--r--etc/rc.d/rc.subr5
1 files changed, 3 insertions, 2 deletions
diff --git a/etc/rc.d/rc.subr b/etc/rc.d/rc.subr
index 5c45d5fa058..58af023f9c3 100644
--- a/etc/rc.d/rc.subr
+++ b/etc/rc.d/rc.subr
@@ -1,4 +1,4 @@
-# $OpenBSD: rc.subr,v 1.52 2011/10/09 08:48:53 ajacoutot Exp $
+# $OpenBSD: rc.subr,v 1.53 2011/10/09 16:46:55 schwarze Exp $
#
# Copyright (c) 2010, 2011 Antoine Jacoutot <ajacoutot@openbsd.org>
# Copyright (c) 2010, 2011 Ingo Schwarze <schwarze@openbsd.org>
@@ -34,7 +34,8 @@ rc_write_runfile() {
}
rc_read_runfile() {
- [ -f ${_RC_RUNFILE} ] && pexp=$(< ${_RC_RUNFILE})
+ [ -f ${_RC_RUNFILE} ] && local _new_pexp=$(< ${_RC_RUNFILE})
+ [ -n "${_new_pexp}" ] && pexp="${_new_pexp}"
}
rc_rm_runfile() {