From 0225e4057cb49c67639d046d2c0f114b89d2dcf5 Mon Sep 17 00:00:00 2001 From: Armin Preiml Date: Wed, 01 May 2024 20:46:10 +0200 Subject: [PATCH] reset related event in ev::unregister Otherwise the next dispatch will cause a segfault. Signed-off-by: Armin Preiml --- ev/+linux/file.ha | 10 ++++++++++ diff --git a/ev/+linux/file.ha b/ev/+linux/file.ha index 8ba2e35e61d39b48ffde30dd402e335f08e24fc7..e79e35fa4a0892f71f30064ebdce8902ba85c8f9 100644 --- a/ev/+linux/file.ha +++ b/ev/+linux/file.ha @@ -109,6 +109,16 @@ }; if (file.op == op::SIGNAL) { signal_restore(file); }; + + for (let ev &.. loop.events) { + if (file != ev.data.ptr) { + continue; + }; + ev.events = 0; + ev.data.ptr = null: *opaque; + ev.data.fd = 0; + break; + }; free(file); }; -- 2.48.1