inkobj: Implement InkCollector_QueryInterface
John Klehm
xixsimplicityxix at gmail.com
Fri Aug 24 03:18:24 CDT 2007
Since Create is passing to QueryInterface it probably should do the
right thing and this patch makes it so.
-John Klehm
-------------- next part --------------
From af7e3fd1865c1aec4131958609220ec370d6048e Mon Sep 17 00:00:00 2001
From: John Klehm <xixsimplicityxix at gmail.com>
Date: Fri, 24 Aug 2007 02:04:08 -0500
Subject: inkobj: Implement InkCollector_QueryInterface
---
dlls/inkobj/inkcollector.c | 21 ++++++++++++++++++++-
1 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/dlls/inkobj/inkcollector.c b/dlls/inkobj/inkcollector.c
index 17f460f..53aec0c 100644
--- a/dlls/inkobj/inkcollector.c
+++ b/dlls/inkobj/inkcollector.c
@@ -23,7 +23,26 @@ WINE_DEFAULT_DEBUG_CHANNEL(inkobj);
static HRESULT WINAPI InkCollector_QueryInterface(
IInkCollector* This, REFIID riid, void** ppvObject)
{
- FIXME("requested interface %s not implemented\n", debugstr_guid(riid));
+ *ppvObject = NULL;
+
+ if (IsEqualGUID(riid, &IID_IUnknown) ||
+ IsEqualGUID(riid, &IID_IClassFactory))
+ {
+ TRACE("Query: IID_IUnknown or IID_IClassFactory\n");
+ IClassFactory_AddRef((IClassFactory*)This);
+ *ppvObject = &(This->lpVtbl);
+ return S_OK;
+ }
+ else if (IsEqualGUID(&IID_IInkCollector, riid))
+ {
+ TRACE("Query: IID_IInkCollector\n");
+ IInkCollector_AddRef(This);
+ *ppvObject = &(This->lpVtbl);
+ return S_OK;
+ }
+
+ FIXME("Interface not implemented: %s\n", debugstr_guid(riid));
+
return E_NOINTERFACE;
}
--
1.5.1.6
More information about the wine-patches
mailing list