2011-10-11 15:15:07 +02:00
|
|
|
Index: systemd-36/src/systemctl.c
|
|
|
|
===================================================================
|
2012-10-26 14:34:44 +02:00
|
|
|
--- systemd-36.orig/src/systemctl/systemctl.c
|
|
|
|
+++ systemd-36/src/systemctl/systemctl.c
|
2011-10-11 15:15:07 +02:00
|
|
|
@@ -4672,10 +4672,13 @@ static int parse_argv(int argc, char *ar
|
|
|
|
/* Hmm, so some other init system is
|
|
|
|
* running, we need to forward this
|
|
|
|
* request to it. For now we simply
|
|
|
|
- * guess that it is Upstart. */
|
|
|
|
-
|
|
|
|
- execv("/lib/upstart/telinit", argv);
|
|
|
|
+ * guess that it is Sysvinit or Upstart. */
|
|
|
|
|
|
|
|
+ if (!access("/lib/sysvinit/telinit", X_OK)) {
|
|
|
|
+ execv("/lib/sysvinit/telinit", argv);
|
|
|
|
+ } else {
|
|
|
|
+ execv("/lib/upstart/telinit", argv);
|
|
|
|
+ }
|
|
|
|
log_error("Couldn't find an alternative telinit implementation to spawn.");
|
|
|
|
return -EIO;
|
|
|
|
}
|