defaulting to UTF-8 and doing something with PID files
This commit is contained in:
25
zhm/zhm.c
25
zhm/zhm.c
@ -412,14 +412,16 @@ init_hm(void)
|
||||
serv_sin.sin_port = (sp) ? sp->s_port : SERVER_SVC_FALLBACK;
|
||||
|
||||
#ifndef DEBUG
|
||||
if (!inetd && !nofork)
|
||||
if (!inetd && !nofork) {
|
||||
detach();
|
||||
|
||||
/* Write pid to file */
|
||||
fp = fopen(PidFile, "w");
|
||||
if (fp != NULL) {
|
||||
fprintf(fp, "%d\n", getpid());
|
||||
fclose(fp);
|
||||
}
|
||||
else {
|
||||
/* Write pid to file */
|
||||
fp = fopen(PidFile, "w");
|
||||
if (fp != NULL) {
|
||||
fprintf(fp, "%d\n", getpid());
|
||||
fclose(fp);
|
||||
}
|
||||
}
|
||||
#endif /* DEBUG */
|
||||
|
||||
@ -469,11 +471,18 @@ detach(void)
|
||||
/* detach from terminal and fork. */
|
||||
register int i, x = ZGetFD();
|
||||
register long size;
|
||||
FILE *fp;
|
||||
|
||||
i = fork();
|
||||
if (i) {
|
||||
if (i < 0)
|
||||
if (i < 0) {
|
||||
perror("fork");
|
||||
}
|
||||
fp = fopen(PidFile, "w");
|
||||
if (fp != NULL) {
|
||||
fprintf(fp, "%d\n", i);
|
||||
fclose(fp);
|
||||
}
|
||||
exit(0);
|
||||
}
|
||||
#ifdef _POSIX_VERSION
|
||||
|
Reference in New Issue
Block a user