From 25609bd4127d6f38980321f0aa026f4d6cc88352 Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Sun, 29 Sep 2019 19:03:24 -0500 Subject: [PATCH] strmbase: Set the filter debug info only if valid. Fixes using binaries compiled with Wine's strmbase with Windows 8 and higher. Signed-off-by: Zebediah Figura Signed-off-by: Alexandre Julliard --- dlls/strmbase/filter.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/strmbase/filter.c b/dlls/strmbase/filter.c index b52a99d25b2..2de0a78f7a0 100644 --- a/dlls/strmbase/filter.c +++ b/dlls/strmbase/filter.c @@ -302,7 +302,8 @@ void strmbase_filter_init(struct strmbase_filter *filter, const IBaseFilterVtbl filter->refcount = 1; InitializeCriticalSection(&filter->csFilter); - filter->csFilter.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": strmbase_filter.csFilter"); + if (filter->csFilter.DebugInfo != (RTL_CRITICAL_SECTION_DEBUG *)-1) + filter->csFilter.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": strmbase_filter.csFilter"); filter->clsid = *clsid; filter->pin_version = 1; filter->pFuncsTable = func_table; @@ -314,6 +315,5 @@ void strmbase_filter_cleanup(struct strmbase_filter *This) IReferenceClock_Release(This->pClock); This->IBaseFilter_iface.lpVtbl = NULL; - This->csFilter.DebugInfo->Spare[0] = 0; DeleteCriticalSection(&This->csFilter); }