Commit 30e90c9a authored by Michael Stefaniuc's avatar Michael Stefaniuc Committed by Alexandre Julliard

mstask: COM cleanup for the IClassFactory iface.

parent 5fd62154
......@@ -21,12 +21,23 @@
WINE_DEFAULT_DEBUG_CHANNEL(mstask);
struct ClassFactoryImpl
{
IClassFactory IClassFactory_iface;
LONG ref;
};
static inline ClassFactoryImpl *impl_from_IClassFactory(IClassFactory *iface)
{
return CONTAINING_RECORD(iface, ClassFactoryImpl, IClassFactory_iface);
}
static HRESULT WINAPI MSTASK_IClassFactory_QueryInterface(
LPCLASSFACTORY iface,
REFIID riid,
LPVOID *ppvObj)
{
ClassFactoryImpl *This = (ClassFactoryImpl *)iface;
ClassFactoryImpl *This = impl_from_IClassFactory(iface);
TRACE("IID: %s\n",debugstr_guid(riid));
if (ppvObj == NULL)
......@@ -35,7 +46,7 @@ static HRESULT WINAPI MSTASK_IClassFactory_QueryInterface(
if (IsEqualGUID(riid, &IID_IUnknown) ||
IsEqualGUID(riid, &IID_IClassFactory))
{
*ppvObj = &This->lpVtbl;
*ppvObj = &This->IClassFactory_iface;
IClassFactory_AddRef(iface);
return S_OK;
}
......@@ -105,4 +116,4 @@ static const IClassFactoryVtbl IClassFactory_Vtbl =
MSTASK_IClassFactory_LockServer
};
ClassFactoryImpl MSTASK_ClassFactory = { &IClassFactory_Vtbl };
ClassFactoryImpl MSTASK_ClassFactory = { { &IClassFactory_Vtbl } };
......@@ -31,11 +31,7 @@
extern LONG dll_ref;
typedef struct
{
const IClassFactoryVtbl *lpVtbl;
LONG ref;
} ClassFactoryImpl;
typedef struct ClassFactoryImpl ClassFactoryImpl;
extern ClassFactoryImpl MSTASK_ClassFactory;
typedef struct
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment