Jinoh Kang (@iamahuman) commented about dlls/windows.media.speech/recognizer.c:
return ref; }
+static HRESULT session_join_worker_thread( ISpeechContinuousRecognitionSession *iface ) +{ + struct session *impl = impl_from_ISpeechContinuousRecognitionSession(iface); + + EnterCriticalSection(&impl->cs); + if (impl->worker_thread) + { + if (WaitForSingleObject(impl->worker_thread, 1000))
```suggestion:-0+0 if (WaitForSingleObject(impl->worker_thread, INFINITE)) ``` `session_join_worker_thread` is called by `session_Release`. If the worker thread is still running by the time `session_join_worker_thread` returns, `session_Release` will free memory still referenced by the worker thread. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/729#note_20516