From d627e3688026f322b262abda3ace29751de91269 Mon Sep 17 00:00:00 2001 From: Raphael Schlarb Date: Tue, 25 Nov 2025 14:09:54 +0800 Subject: [PATCH 1/2] fix: avoid undefined behavior by zeroing timer list timer_list in the kqueue_service is not properly initialised leading to possible undefined behavior. This patch zeroes the timer_list member to avoid this. --- src/th_kqueue_service.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/th_kqueue_service.c b/src/th_kqueue_service.c index da35e4b..36e85dc 100644 --- a/src/th_kqueue_service.c +++ b/src/th_kqueue_service.c @@ -168,6 +168,7 @@ th_kqueue_service_init(th_kqueue_service* service, th_runner* runner, th_allocat service->base.destroy = th_kqueue_service_destroy; service->allocator = allocator; service->runner = runner; + service->timer_list = (th_kqueue_timer_list){0}; if ((service->kq = kqueue()) == -1) { return TH_ERR_SYSTEM(errno); } From 6df7737a7dd76597bd05c2e0c30d3e1967750628 Mon Sep 17 00:00:00 2001 From: Raphael Schlarb Date: Tue, 25 Nov 2025 14:12:54 +0800 Subject: [PATCH 2/2] chore: update amalgamation files --- th.c | 1 + 1 file changed, 1 insertion(+) diff --git a/th.c b/th.c index 3bf5a9b..77ecd1a 100644 --- a/th.c +++ b/th.c @@ -5777,6 +5777,7 @@ th_kqueue_service_init(th_kqueue_service* service, th_runner* runner, th_allocat service->base.destroy = th_kqueue_service_destroy; service->allocator = allocator; service->runner = runner; + service->timer_list = (th_kqueue_timer_list){0}; if ((service->kq = kqueue()) == -1) { return TH_ERR_SYSTEM(errno); }