aboutsummaryrefslogtreecommitdiff
path: root/src/rc
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2008-11-04 00:21:30 +0000
committerRoy Marples <roy@marples.name>2008-11-04 00:21:30 +0000
commit33d4fba5be98a617ecc90fb32ae533148bce7c97 (patch)
tree79457df1245a336c8f0ddbf1f32ef78b27274b89 /src/rc
parent32e17af92f607a50b126973ea2a05f90ecbae9dc (diff)
We start off in sysinit correctly.
Diffstat (limited to 'src/rc')
-rw-r--r--src/rc/rc.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/rc/rc.c b/src/rc/rc.c
index ec11a472..7af7103a 100644
--- a/src/rc/rc.c
+++ b/src/rc/rc.c
@@ -856,11 +856,14 @@ main(int argc, char **argv)
signal_setup(SIGUSR1, handle_signal);
signal_setup(SIGWINCH, handle_signal);
- rc_plugin_load();
-
/* Run any special sysinit foo */
- if (newlevel && strcmp(newlevel, RC_LEVEL_SYSINIT) == 0)
+ if (newlevel && strcmp(newlevel, RC_LEVEL_SYSINIT) == 0) {
do_sysinit();
+ free(runlevel);
+ runlevel = rc_runlevel_get();
+ }
+
+ rc_plugin_load();
/* Now we start handling our children */
signal_setup(SIGCHLD, handle_signal);