meshcore_py/src
Matthew Wolter d4581a8e13 G5: F07 — await in-flight async callbacks before stop() returns
Why: EventDispatcher._process_events() calls task_done() on the queue
immediately after spawning async callback tasks. await queue.join() in
stop() therefore returns as soon as all items are marked done, even if
their async callbacks are still executing. Any caller that does
"await dispatcher.stop(); cleanup()" could race with still-running
callbacks. Fix: after queue.join(), gather all tracked background tasks
before cancelling the dispatch loop.

Refs: Forensics report finding F07
2026-04-12 03:56:28 -07:00
..
meshcore G5: F07 — await in-flight async callbacks before stop() returns 2026-04-12 03:56:28 -07:00