coredump: do not coredump in setting up logger

If log_parse_environment() or log_set_target_and_open() triggers
assertion or so, then we may enter endless loop. Let's disable coredump
earlier.
This commit is contained in:
Yu Watanabe
2026-08-27 05:50:14 +09:00
parent 3fd564e876
commit 0351920ac7
+3 -3
View File
@@ -25,14 +25,14 @@ static int run(int argc, char *argv[]) {
if (streq_ptr(argv[1], "--backtrace"))
return coredump_backtrace(argc, argv);
/* Make sure we never enter a loop. */
(void) set_dumpable(SUID_DUMP_DISABLE);
/* First, log to a safe place, since we don't know what crashed and it might be journald which we'd
* rather not log to then. */
log_parse_environment();
log_set_target_and_open(LOG_TARGET_KMSG);
/* Make sure we never enter a loop. */
(void) set_dumpable(SUID_DUMP_DISABLE);
r = sd_listen_fds(false);
if (r < 0)
return log_error_errno(r, "Failed to determine the number of file descriptors: %m");