clip_mch_request_selection() kept the read state on the stack and read the clipboard with a 3-second timeout. On a timeout it returned while the async read was still pending, so when the callback finally fired it wrote into the freed stack frame and passed a stale Clipboard_T into clip_yank_selection(). Heap-allocate the state and hand ownership to the callback on timeout.
https://github.com/vim/vim/pull/20467
(1 file)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()