From 47cab33aa8b3c8b47e34de6148440a1bc30a2297 Mon Sep 17 00:00:00 2001 From: systec-awe Date: Wed, 20 Mar 2024 13:58:56 +0100 Subject: Fix missing SIGUSR2 posix signal handling (#5960) Since there is no separate error handling the `SIGUSR2` signal is registered to get the write return code after exiting the program. Fixes #5958 --------- Signed-off-by: Andre Werner --- src/main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main.c b/src/main.c index 4ebca3e4..41054fcf 100644 --- a/src/main.c +++ b/src/main.c @@ -239,7 +239,7 @@ static void handle_term_signal(struct ev_loop *loop, ev_signal *signal, int reve */ static void setup_term_handlers(void) { static struct ev_signal signal_watchers[6]; - size_t num_watchers = sizeof(signal_watchers) / sizeof(signal_watchers[0]); + const size_t num_watchers = sizeof(signal_watchers) / sizeof(signal_watchers[0]); /* We have to rely on libev functionality here and should not use * sigaction handlers because we need to invoke the exit handlers @@ -252,7 +252,7 @@ static void setup_term_handlers(void) { ev_signal_init(&signal_watchers[2], handle_term_signal, SIGALRM); ev_signal_init(&signal_watchers[3], handle_term_signal, SIGTERM); ev_signal_init(&signal_watchers[4], handle_term_signal, SIGUSR1); - ev_signal_init(&signal_watchers[5], handle_term_signal, SIGUSR1); + ev_signal_init(&signal_watchers[5], handle_term_signal, SIGUSR2); for (size_t i = 0; i < num_watchers; i++) { ev_signal_start(main_loop, &signal_watchers[i]); /* The signal handlers should not block ev_run from returning -- cgit v1.2.3-54-g00ecf