bits: Implemented BITS_IClassFactory_Release (13/27)
Roy Shea
roy at cs.hmc.edu
Fri Nov 16 18:18:28 CST 2007
---
dlls/qmgr/factory.c | 19 +++++++++++++++++--
1 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/dlls/qmgr/factory.c b/dlls/qmgr/factory.c
index 2cf3da4..b8146e0 100644
--- a/dlls/qmgr/factory.c
+++ b/dlls/qmgr/factory.c
@@ -76,8 +76,23 @@ static HRESULT WINAPI BITS_IClassFactory_QueryInterface(
static ULONG WINAPI BITS_IClassFactory_Release(LPCLASSFACTORY iface)
{
- FIXME("Not implemented\n");
- return E_NOTIMPL;
+ ICOM_THIS_MULTI(ClassFactoryImpl, lpVtbl, 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;
}
static HRESULT WINAPI BITS_IClassFactory_CreateInstance(
--
1.5.3.1
More information about the wine-patches
mailing list