* Since stderr is set to linebuffered mode, the
* logging of different processes will not overlap
*/
- fprintf(stderr, "[%d] ", (int)getpid());
+ fprintf(stderr, "[%"PRIuMAX"] ", (uintmax_t)getpid());
vfprintf(stderr, err, params);
fputc('\n', stderr);
}
remove_child(pid);
if (!WIFEXITED(status) || (WEXITSTATUS(status) > 0))
dead = " (with error)";
- loginfo("[%d] Disconnected%s", (int)pid, dead);
+ loginfo("[%"PRIuMAX"] Disconnected%s", (uintmax_t)pid, dead);
}
}
FILE *f = fopen(path, "w");
if (!f)
die("cannot open pid file %s: %s", path, strerror(errno));
- if (fprintf(f, "%d\n", getpid()) < 0 || fclose(f) != 0)
+ if (fprintf(f, "%"PRIuMAX"\n", (uintmax_t) getpid()) < 0 || fclose(f) != 0)
die("failed to write pid file %s: %s", path, strerror(errno));
}
openlog("git-daemon", LOG_PID, LOG_DAEMON);
set_die_routine(daemon_die);
} else
- setlinebuf(stderr); /* avoid splitting a message in the middle */
+ /* avoid splitting a message in the middle */
+ setvbuf(stderr, NULL, _IOLBF, 0);
if (inetd_mode && (group_name || user_name))
die("--user and --group are incompatible with --inetd");
if (strict_paths && (!ok_paths || !*ok_paths))
die("option --strict-paths requires a whitelist");
- if (base_path) {
- struct stat st;
-
- if (stat(base_path, &st) || !S_ISDIR(st.st_mode))
- die("base-path '%s' does not exist or "
- "is not a directory", base_path);
- }
+ if (base_path && !is_directory(base_path))
+ die("base-path '%s' does not exist or is not a directory",
+ base_path);
if (inetd_mode) {
struct sockaddr_storage ss;