Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> --- dlls/evr/evr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dlls/evr/evr.c b/dlls/evr/evr.c index 5ab6572e50..01e4ee4598 100644 --- a/dlls/evr/evr.c +++ b/dlls/evr/evr.c @@ -117,12 +117,15 @@ static ULONG WINAPI inner_AddRef(IUnknown *iface) static ULONG WINAPI inner_Release(IUnknown *iface) { evr_filter *This = impl_from_inner_IUnknown(iface); - ULONG ref = BaseFilterImpl_Release(&This->filter.IBaseFilter_iface); + ULONG ref = InterlockedDecrement(&This->filter.refCount); TRACE("(%p, %p)->(): new ref %d\n", iface, This, ref); if (!ref) + { + strmbase_filter_cleanup(&This->filter); CoTaskMemFree(This); + } return ref; } -- 2.21.0