Michael Stefaniuc : dmstyle: Implement IClassFactory::QueryInterface.
Module: wine Branch: master Commit: ae43b099f901534e8e8dc18e034499961e1dbf00 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ae43b099f901534e8e8dc18e03... Author: Michael Stefaniuc <mstefani(a)redhat.de> Date: Wed Jul 27 14:07:03 2011 +0200 dmstyle: Implement IClassFactory::QueryInterface. --- dlls/dmstyle/dmstyle_main.c | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/dlls/dmstyle/dmstyle_main.c b/dlls/dmstyle/dmstyle_main.c index 74e9e7c..5392748 100644 --- a/dlls/dmstyle/dmstyle_main.c +++ b/dlls/dmstyle/dmstyle_main.c @@ -47,12 +47,22 @@ static inline IClassFactoryImpl *impl_from_IClassFactory(IClassFactory *iface) static HRESULT WINAPI ClassFactory_QueryInterface(IClassFactory *iface, REFIID riid, void **ppv) { - FIXME("- no interface IID: %s\n", debugstr_guid(riid)); - if (ppv == NULL) return E_POINTER; - return E_NOINTERFACE; + if (IsEqualGUID(&IID_IUnknown, riid)) + TRACE("(%p)->(IID_IUnknown %p)\n", iface, ppv); + else if (IsEqualGUID(&IID_IClassFactory, riid)) + TRACE("(%p)->(IID_IClassFactory %p)\n", iface, ppv); + else { + FIXME("(%p)->(%s %p)\n", iface, debugstr_guid(riid), ppv); + *ppv = NULL; + return E_NOINTERFACE; + } + + *ppv = iface; + IUnknown_AddRef((IUnknown*)*ppv); + return S_OK; } static ULONG WINAPI ClassFactory_AddRef(IClassFactory *iface)
participants (1)
-
Alexandre Julliard