mirror of
https://github.com/meshcore-dev/meshcore_py.git
synced 2026-06-11 11:56:18 +00:00
Why: send_binary_req() registered the pending request with the reader AFTER send() returned. If a BINARY_RESPONSE arrives between send() returning and registration (reachable for TCP-companion proxies), the reader logs "No tracked request found" and the caller's wait_for_event times out. Fix: pre-register a placeholder keyed by object id before send(), then swap it for the real tag from MSG_SENT. On send() failure, the placeholder is cleaned up. Refs: Forensics report finding R03