do not lose exit reasons (#19875)
Costa Tsaousis committed
Mar 16, 2025 at 09:37 UTC
2b06fc1d61413789a2cc161388aa231ee3fb3cba
1 file changed
+3
-4
src/daemon/daemon-status-file.c
+3
-4
@@ -1308,14 +1308,12 @@ static void daemon_status_file_out_of_memory(void) {
1308
1309
// DO NOT ALLOCATE IN THIS FUNCTION - WE DON'T HAVE ANY MEMORY AVAILABLE!
1310
1311
- exit_initiated_add(EXIT_REASON_OUT_OF_MEMORY);
1312
-
1311
// the buffer should already be allocated, so this should normally do nothing
1312
static_save_buffer_init();
1313
1314
dsf_acquire(session_status);
1317
- session_status.exit_reason = exit_initiated;
1318
-
1315
+ exit_initiated_add(EXIT_REASON_OUT_OF_MEMORY);
1316
+ session_status.exit_reason |= EXIT_REASON_OUT_OF_MEMORY;
1317
dsf_release(session_status);
1318
1319
daemon_status_file_save_twice_if_we_can_get_stack_trace(static_save_buffer, &session_status, true);
@@ -1329,6 +1327,7 @@ bool daemon_status_file_deadly_signal_received(EXIT_REASON reason, SIGNAL_CODE c
1327
1328
dsf_acquire(session_status);
1329
1330
+ exit_initiated_add(reason);
1331
session_status.exit_reason |= reason;
1332
session_status.fatal.sentry = chained_handler;
1333