diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/rc/rc.c | 6 | ||||
-rw-r--r-- | src/rc/start-stop-daemon.c | 3 |
2 files changed, 4 insertions, 5 deletions
diff --git a/src/rc/rc.c b/src/rc/rc.c index 9aa0a6c0..98b44cc8 100644 --- a/src/rc/rc.c +++ b/src/rc/rc.c @@ -560,7 +560,6 @@ static void run_script (const char *script) eerrorx ("%s: failed to exec `%s'", applet, script); } -#ifndef PREFIX static void do_coldplug (void) { size_t s; @@ -661,7 +660,6 @@ static void do_coldplug (void) printf (" %s", service); printf ("%s\n", ecolor (ECOLOR_NORMAL)); } -#endif #include "_usage.h" #define getoptstring "o:" getoptstring_COMMON @@ -869,9 +867,9 @@ int main (int argc, char **argv) } #endif -#ifndef PREFIX + /* Setup our coldplugged services now */ do_coldplug (); -#endif + rc_plugin_run (RC_HOOK_RUNLEVEL_START_OUT, newlevel); hook_out = 0; diff --git a/src/rc/start-stop-daemon.c b/src/rc/start-stop-daemon.c index d0e168af..9ffeba05 100644 --- a/src/rc/start-stop-daemon.c +++ b/src/rc/start-stop-daemon.c @@ -966,7 +966,8 @@ int start_stop_daemon (int argc, char **argv) /* Clean the environment of any RC_ variables */ STRLIST_FOREACH (environ, env, i) { - if (strncmp (env, "RC_", 3) == 0 || + if ((strncmp (env, "RC_", 3) == 0 && + strncmp (env, "RC_SERVICE=", strlen ("RC_SERVICE=")) != 0) || strncmp (env, "SSD_NICELEVEL=", strlen ("SSD_NICELEVEL=")) == 0) continue; |