Files
Nim/tests/async
bptato 29a7d60acb Fix ioselectors_kqueue raising wrong exceptions (#24079)
kqueue will remove pipes automatically if their read end is closed.
Unfortunately this means that trying to unregister it (which is
necessary to clean up resources & for consistency with other ioselectors
implementations) will set an ENOENT error, which currently raises an
exception.

(ETA: in other words, it is currently impossible to call unregister on a
pipe fd without potentially getting the selector into an invalid state
on platforms with kqueue.)

Avoid this issue by ignoring ENOENT errors returned from kqueue.

(Tested on FreeBSD. I added a test case to the tioselectors file; the
seemingly unrelated change is to fix a race condition that doesn't
appear on Linux, so that it would run my code too.)
2024-09-08 22:50:10 +02:00
..
2021-09-19 23:35:50 +02:00
2018-12-11 21:23:22 +01:00
2020-12-28 14:13:21 +01:00
2020-08-08 07:24:54 +02:00
2020-11-02 14:17:09 +01:00
2017-05-16 22:09:19 +02:00
2020-03-30 13:18:12 +02:00
2016-09-07 12:19:06 +03:00
2018-12-11 21:23:22 +01:00
2018-12-11 21:23:21 +01:00
2018-12-11 21:23:22 +01:00
2020-06-09 20:39:26 +02:00
2018-11-07 15:22:02 +01:00
2020-03-30 13:18:12 +02:00
2016-10-20 15:20:27 +02:00
2020-03-30 13:18:12 +02:00
2018-04-30 02:52:58 +02:00
2014-09-09 01:17:07 +01:00
2016-01-11 11:11:44 +01:00
2020-03-30 13:18:12 +02:00
2016-09-17 13:22:04 +02:00
2016-07-08 10:34:12 +02:00