From 4904d90870a716fda971fc12240ddbc23323475c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Mon, 12 Apr 2021 18:36:02 +0200 Subject: [PATCH] mfplat: Read queue subscriber within the critical section. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: RĂ©mi Bernon Signed-off-by: Nikolay Sivov Signed-off-by: Alexandre Julliard --- dlls/mfplat/main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/mfplat/main.c b/dlls/mfplat/main.c index 6fb8661dba4..9078702c854 100644 --- a/dlls/mfplat/main.c +++ b/dlls/mfplat/main.c @@ -7109,7 +7109,7 @@ static void queue_notify_subscriber(struct event_queue *queue) static HRESULT WINAPI eventqueue_BeginGetEvent(IMFMediaEventQueue *iface, IMFAsyncCallback *callback, IUnknown *state) { struct event_queue *queue = impl_from_IMFMediaEventQueue(iface); - MFASYNCRESULT *result_data = (MFASYNCRESULT *)queue->subscriber; + MFASYNCRESULT *result_data; HRESULT hr; TRACE("%p, %p, %p.\n", iface, callback, state); @@ -7121,7 +7121,7 @@ static HRESULT WINAPI eventqueue_BeginGetEvent(IMFMediaEventQueue *iface, IMFAsy if (queue->is_shut_down) hr = MF_E_SHUTDOWN; - else if (result_data) + else if ((result_data = (MFASYNCRESULT *)queue->subscriber)) { if (result_data->pCallback == callback) hr = IRtwqAsyncResult_GetStateNoAddRef(queue->subscriber) == state ?