Module: wine Branch: master Commit: 55b37182056ed5a00b0a7796109d10265cc36492 URL: https://source.winehq.org/git/wine.git/?a=commit;h=55b37182056ed5a00b0a77961...
Author: Zebediah Figura z.figura12@gmail.com Date: Fri Jan 19 17:54:39 2018 -0600
quartz: Wait for the PullPin thread to terminate.
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/quartz/pin.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/quartz/pin.c b/dlls/quartz/pin.c index 355d87d..5197d5c 100644 --- a/dlls/quartz/pin.c +++ b/dlls/quartz/pin.c @@ -541,11 +541,7 @@ static void PullPin_Thread_Stop(PullPin *This) TRACE("(%p)->()\n", This);
EnterCriticalSection(This->pin.pCritSec); - { - CloseHandle(This->hThread); - This->hThread = NULL; - SetEvent(This->hEventStateChanged); - } + SetEvent(This->hEventStateChanged); LeaveCriticalSection(This->pin.pCritSec);
IBaseFilter_Release(This->pin.pinInfo.pFilter); @@ -831,6 +827,10 @@ HRESULT WINAPI PullPin_Disconnect(IPin *iface) } LeaveCriticalSection(This->pin.pCritSec);
+ WaitForSingleObject(This->hThread, INFINITE); + CloseHandle(This->hThread); + This->hThread = NULL; + return hr; }