bits: Implemented BITS_IBackgroundCopyManager_Release (19/26)

Roy Shea roy at cs.hmc.edu
Mon Nov 19 18:23:07 CST 2007


---
 dlls/qmgr/qmgr.c |   19 +++++++++++++++++--
 1 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/dlls/qmgr/qmgr.c b/dlls/qmgr/qmgr.c
index 1b85e76..01bdaed 100644
--- a/dlls/qmgr/qmgr.c
+++ b/dlls/qmgr/qmgr.c
@@ -75,8 +75,23 @@ static HRESULT WINAPI BITS_IBackgroundCopyManager_QueryInterface(
 static ULONG WINAPI BITS_IBackgroundCopyManager_Release(
         IBackgroundCopyManager* iface)
 {
-    FIXME("Not implemented\n");
-    return E_NOTIMPL;
+    ICOM_THIS_MULTI(BackgroundCopyManagerImpl, bitsVtbl, iface);
+    ULONG ref;
+
+    TRACE("\n");
+
+    if (This == NULL)
+    {
+        return E_POINTER;
+    }
+
+    ref = InterlockedDecrement(&This->ref);
+    if (ref == 0)
+    {
+        HeapFree(GetProcessHeap(), 0, This);
+        InterlockedDecrement(&dll_ref);
+    }
+    return ref;
 }
 
 /*** IBackgroundCopyManager interface methods ***/
-- 
1.5.3.1




More information about the wine-patches mailing list