Miss Islington (bot)
b2b9aaa93d
[3.14] gh-135099: Only wait on _PyOS_SigintEvent() in main thread (GH-135100) (GH-135116)
...
On Windows, the `_PyOS_SigintEvent()` event handle is used to interrupt
the main thread when Ctrl-C is pressed. Previously, we also waited on
the event from other threads, but ignored the result. However, this can
race with interpreter shutdown because the main thread closes the handle
in `_PySignal_Fini` and threads may still be running and using mutexes
during interpreter shtudown.
Only use `_PyOS_SigintEvent()` in the main thread in parking_lot.c, like
we do in other places in the CPython codebase.
(cherry picked from commit cc581f32bf5f15e9f2f89b830ec64ea25684d0cd)
Co-authored-by: Sam Gross <colesbury@gmail.com>
2025-06-04 08:44:35 -04:00
..
2025-05-05 15:25:22 -07:00
2025-04-09 16:18:54 -07:00
2025-04-12 11:34:36 +01:00
2025-06-03 15:31:06 +02:00
2025-04-29 02:21:47 +00:00
2025-05-04 21:07:35 +03:00
2025-05-09 07:38:12 +00:00
2025-04-30 11:46:41 +02:00
2025-05-04 21:07:35 +03:00
2025-03-17 09:19:04 +00:00
2024-06-04 10:22:22 +00:00
2025-05-06 13:12:26 +03:00
2025-05-13 09:23:39 +00:00
2025-05-04 10:05:35 +01:00
2025-05-22 14:42:23 -07:00
2025-04-30 10:11:09 +09:00
2025-05-27 12:29:48 +01:00
2025-05-04 21:07:35 +03:00
2025-04-02 14:48:47 +03:00
2024-12-23 13:31:33 +01:00
2025-05-27 16:07:44 +00:00
2025-04-26 12:14:14 +02:00
2025-05-30 18:28:35 +00:00
2025-03-17 12:32:43 +01:00
2025-03-19 23:01:32 +01:00
2025-03-19 17:33:24 +01:00
2025-05-20 18:49:29 +00:00
2025-04-25 14:43:38 -06:00
2025-05-06 13:12:26 +03:00
2025-04-14 21:32:41 +03:00
2025-05-04 21:00:11 -07:00
2025-03-17 09:19:04 +00:00
2025-04-17 13:38:34 -07:00
2024-11-22 18:50:30 +00:00
2024-10-29 23:57:59 +00:00
2025-05-27 18:00:19 +00:00
2024-07-22 12:08:27 -04:00
2025-05-05 13:44:50 +01:00
2025-05-06 13:12:26 +03:00
2025-04-26 17:14:18 +03:00
2024-11-12 15:59:19 +02:00
2025-05-05 15:09:19 +00:00
2025-04-30 11:37:53 +01:00
2025-05-30 18:28:35 +00:00
2025-04-18 02:49:19 +01:00
2025-05-25 22:10:20 +00:00
2025-05-10 22:25:42 +00:00
2025-04-30 11:37:53 +01:00
2025-04-10 10:41:15 +02:00
2025-03-17 09:19:04 +00:00
2025-04-29 17:21:53 -07:00
2025-04-30 11:46:41 +02:00
2025-03-24 11:00:32 +01:00
2025-03-14 09:52:15 +00:00
2025-03-17 12:32:43 +01:00
2025-04-25 11:02:57 +00:00
2024-07-22 12:08:27 -04:00
2025-05-01 10:28:52 +00:00
2025-05-01 12:07:53 +01:00
2025-05-05 14:31:48 -07:00
2025-05-06 13:12:26 +03:00
2025-03-20 16:59:41 -07:00
2025-05-04 10:05:35 +01:00
2025-06-04 08:44:35 -04:00
2025-02-20 11:31:15 -05:00
2025-06-03 15:31:06 +02:00
2025-03-20 11:35:23 +00:00
2024-11-07 16:37:41 +01:00
2024-08-30 15:42:27 +00:00
2025-04-30 11:37:53 +01:00
2025-05-25 22:10:20 +00:00
2024-11-01 22:04:31 +00:00
2025-05-10 16:44:07 +00:00
2025-03-19 13:46:17 +00:00
2025-05-08 10:05:34 -06:00
2025-03-19 17:33:24 +01:00
2025-03-17 12:32:43 +01:00
2025-05-26 15:04:36 +00:00
2025-04-25 14:12:16 +01:00
2025-05-06 13:12:26 +03:00
2025-05-11 08:44:22 +00:00
2025-05-05 02:30:14 +02:00
2025-04-18 21:03:42 +05:30
2025-03-17 09:19:04 +00:00
2025-04-30 11:46:41 +02:00
2025-05-17 22:50:00 +00:00
2025-03-31 20:28:35 +01:00
2024-10-13 20:59:41 +05:30
2025-04-04 16:31:37 +02:00
2025-03-17 12:32:43 +01:00
2025-04-30 11:37:53 +01:00
2025-03-22 10:38:47 +01:00
2025-01-17 16:42:27 +01:00
2025-04-29 12:56:20 +02:00