Isaac Connor
0882a3ad1e
fix: resolve Event::Run thread hang preventing zmc clean shutdown
...
Event::Run could block indefinitely in PacketQueue methods during normal
event closing (closeEvent from analysis thread), because their wait
predicates only check deleting/zm_terminate, not Event's terminate_ flag.
Three changes fix this:
- get_packet_no_wait: return immediately when iterator at end instead of
blocking on condition variable (makes it truly non-blocking)
- Event::Run: use increment_it(wait=false) since deletePacket can advance
the iterator to end() during AddPacket_ without the queue lock
- Event::Stop: call packetqueue->notify_all() to wake timed waits so
Run() checks terminate_ promptly
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-12 23:00:59 -05:00
..
2024-03-26 13:43:58 -05:00
2026-02-12 13:32:23 -05:00
2013-03-17 00:45:21 +01:00
2026-02-04 20:44:17 -05:00
2024-10-26 14:29:40 -04:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-02 20:34:33 -05:00
2026-02-03 10:18:49 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 10:18:49 -05:00
2026-02-02 20:44:01 -05:00
2021-05-31 23:29:29 +02:00
2026-02-03 10:18:49 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2021-06-06 19:11:11 +02:00
2021-05-30 22:56:21 +02:00
2021-05-30 22:56:21 +02:00
2026-02-03 10:18:49 -05:00
2024-03-26 13:43:58 -05:00
2026-02-04 20:44:17 -05:00
2024-10-26 14:29:40 -04:00
2021-05-16 16:42:58 +02:00
2026-02-03 10:18:49 -05:00
2025-07-05 08:09:09 -04:00
2026-02-12 23:00:59 -05:00
2026-02-12 23:00:59 -05:00
2026-02-10 20:08:48 -06:00
2026-02-08 16:18:51 -06:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-09 15:57:22 -05:00
2026-01-26 14:40:10 -05:00
2026-02-09 17:38:14 -05:00
2025-09-22 09:52:25 -04:00
2026-02-03 11:03:17 -05:00
2024-03-26 13:43:58 -05:00
2026-02-05 09:08:02 -05:00
2026-01-26 14:40:10 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 11:36:53 -05:00
2024-03-26 13:43:58 -05:00
2026-02-02 23:24:08 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2021-05-30 21:41:58 +02:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 11:42:14 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-07 22:39:28 -05:00
2026-02-07 22:32:56 -05:00
2025-07-19 14:18:32 -04:00
2025-07-19 14:18:32 -04:00
2026-02-03 11:49:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 12:09:44 -05:00
2024-03-26 13:43:58 -05:00
2021-05-16 19:41:45 +02:00
2026-01-29 18:50:42 -05:00
2026-01-29 18:50:42 -05:00
2026-01-05 18:30:08 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-01-14 13:28:52 -05:00
2026-02-09 10:05:02 -05:00
2026-02-09 10:05:02 -05:00
2024-03-26 13:43:58 -05:00
2026-02-12 16:53:39 -05:00
2026-02-09 11:34:44 -05:00
2022-11-03 18:28:23 -04:00
2024-03-26 13:43:58 -05:00
2026-02-09 10:05:02 -05:00
2026-02-12 23:00:59 -05:00
2026-02-09 10:05:02 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-11 22:35:00 -05:00
2024-03-26 13:43:58 -05:00
2025-09-18 14:48:52 -04:00
2024-03-26 13:43:58 -05:00
2026-02-02 20:53:00 -05:00
2024-10-29 13:30:29 -04:00
2026-02-07 23:41:48 -05:00
2026-02-07 23:41:48 -05:00
2026-02-12 23:00:59 -05:00
2026-02-11 22:35:50 -05:00
2026-02-03 12:13:29 -05:00
2022-01-06 16:45:15 -06:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2025-02-26 21:04:32 +11:00
2025-02-26 21:04:32 +11:00
2026-02-04 17:41:37 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-09-14 11:06:55 +10:00
2024-03-26 13:43:58 -05:00
2026-02-03 12:25:21 -05:00
2024-03-26 13:43:58 -05:00
2025-09-18 10:07:50 -04:00
2026-02-03 12:34:21 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 12:45:56 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 12:47:14 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-01-09 11:43:15 -05:00
2026-01-05 13:36:16 +00:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-01-31 12:43:03 -05:00
2026-01-31 16:19:38 -05:00
2026-01-31 16:19:38 -05:00
2026-01-30 15:30:40 -05:00
2024-03-26 13:43:58 -05:00
2026-01-30 14:49:53 -05:00
2026-01-30 14:49:53 -05:00
2024-03-26 13:43:58 -05:00
2026-01-31 12:43:03 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-01-31 12:43:03 -05:00
2026-02-03 12:28:30 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 13:34:17 -05:00
2024-03-26 13:43:58 -05:00
2023-01-18 16:01:42 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-01-30 15:09:02 -05:00
2026-01-30 15:09:02 -05:00
2026-02-03 12:30:06 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 16:44:50 -05:00
2024-10-22 18:32:31 -04:00
2026-02-03 16:47:43 -05:00
2024-03-26 13:43:58 -05:00
2025-07-05 08:09:09 -04:00
2025-07-05 08:09:09 -04:00
2026-02-12 16:53:39 -05:00
2026-02-12 16:53:39 -05:00
2024-03-26 13:43:58 -05:00
2024-03-26 13:43:58 -05:00
2026-02-03 12:24:07 -05:00
2025-08-05 14:13:39 -04:00
2026-02-04 20:45:46 -05:00
2025-06-26 14:53:38 -04:00
2024-03-26 13:43:58 -05:00
2026-02-02 23:26:20 -05:00
2025-09-18 09:27:31 -04:00
2026-02-07 22:52:15 -05:00
2026-02-12 18:06:56 -05:00
2026-02-12 18:06:56 -05:00
2026-01-05 16:36:36 -05:00
2026-01-05 16:36:36 -05:00
2024-03-26 13:43:58 -05:00
2026-01-15 16:31:22 -05:00
2026-01-05 16:38:35 -05:00
2025-12-31 22:29:37 +11:00