it should work even if you don't assign a pidfile
No binary (build failed)
—
(log yok)
| @@ -59,15 +59,14 @@ void background(const char *pidfile) | |
| #else /* __uClinux__ */ | |
| int pid_fd; | |
| - | if (!pidfile) return; |
| - | |
| - | pid_fd = pidfile_acquire(pidfile); /* hold lock during fork. */ |
| + | /* hold lock during fork. */ |
| + | if (pidfile) pid_fd = pidfile_acquire(pidfile); |
| if (daemon(0, 0) == -1) { | |
| perror("fork"); | |
| exit(1); | |
| } | |
| daemonized++; | |
| - | pidfile_write_release(pid_fd); |
| + | if (pidfile) pidfile_write_release(pid_fd); |
| #endif /* __uClinux__ */ | |
| } | |
| @@ -97,8 +96,10 @@ void start_log_and_pid(const char *client_server, const char *pidfile) | |
| sanitize_fds(); | |
| /* do some other misc startup stuff while we are here to save bytes */ | |
| - | pid_fd = pidfile_acquire(pidfile); |
| - | pidfile_write_release(pid_fd); |
| + | if (pidfile) { |
| + | pid_fd = pidfile_acquire(pidfile); |
| + | pidfile_write_release(pid_fd); |
| + | } |
| /* equivelent of doing a fflush after every \n */ | |
| setlinebuf(stdout); | |