From 40eb39e3729203ab7d874f05055468b56f682400 Mon Sep 17 00:00:00 2001 From: Jindrich Novy Date: Tue, 2 Dec 2025 11:01:56 +0100 Subject: [PATCH] Fix SIGABRT crash in drop_signal_event Replace g_assert_cmpint with proper error handling to prevent abort when signalfd read fails. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2348843 Signed-off-by: Jindrich Novy --- src/utils.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/utils.c b/src/utils.c index 1fb5ab0b..2303eb70 100644 --- a/src/utils.c +++ b/src/utils.c @@ -105,8 +105,12 @@ int get_signal_descriptor() void drop_signal_event(int fd) { struct signalfd_siginfo siginfo; - ssize_t s = read(fd, &siginfo, sizeof siginfo); - g_assert_cmpint(s, ==, sizeof siginfo); + ssize_t s = read(fd, &siginfo, sizeof(siginfo)); + if (s != sizeof(siginfo)) { + if (s < 0) + nwarn("Failed to read from signalfd"); + return; + } } #endif