Thomas Faber : qcap: Destroy BaseFilter after VfwCapture child class.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Jul 22 14:12:21 CDT 2014


Module: wine
Branch: master
Commit: 5cbc081a1fef1e89a755bc44dc509bed29feaf42
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=5cbc081a1fef1e89a755bc44dc509bed29feaf42

Author: Thomas Faber <thomas.faber at reactos.org>
Date:   Sat Jul 19 10:38:26 2014 +0200

qcap: Destroy BaseFilter after VfwCapture child class.

---

 dlls/qcap/vfwcapture.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/dlls/qcap/vfwcapture.c b/dlls/qcap/vfwcapture.c
index 41a05a5..6d416b7 100644
--- a/dlls/qcap/vfwcapture.c
+++ b/dlls/qcap/vfwcapture.c
@@ -203,7 +203,7 @@ static HRESULT WINAPI VfwCapture_QueryInterface(IBaseFilter * iface, REFIID riid
 static ULONG WINAPI VfwCapture_Release(IBaseFilter * iface)
 {
     VfwCapture *This = (VfwCapture *)iface;
-    ULONG refCount = BaseFilterImpl_Release(iface);
+    ULONG refCount = InterlockedDecrement(&This->filter.refCount);
 
     TRACE("%p->() New refcount: %d\n", This, refCount);
 
@@ -225,6 +225,7 @@ static ULONG WINAPI VfwCapture_Release(IBaseFilter * iface)
             IPin_Disconnect(This->pOutputPin);
         }
         IPin_Release(This->pOutputPin);
+        BaseFilter_Destroy(&This->filter);
         CoTaskMemFree(This);
         ObjectRefCount(FALSE);
     }




More information about the wine-cvs mailing list