diff --git a/src/rc/supervise-daemon.c b/src/rc/supervise-daemon.c index 57d55194..5636eaab 100644 --- a/src/rc/supervise-daemon.c +++ b/src/rc/supervise-daemon.c @@ -694,6 +694,10 @@ int main(int argc, char **argv) fprintf(fp, "%d\n", getpid()); fclose(fp); + if (svcname) + rc_service_daemon_set(svcname, exec, + (const char * const *) argv, pidfile, true); + /* * Supervisor main loop */ @@ -718,10 +722,6 @@ int main(int argc, char **argv) } } - if (svcname) - rc_service_daemon_set(svcname, exec, - (const char * const *) argv, pidfile, true); - exit(EXIT_SUCCESS); } else if (child_pid == 0) child_process(exec, argv);