Henri Verbeet : ddrawex: Don' t return a pointer to the implementation in IDirectDrawFactoryImpl_QueryInterface ().

Alexandre Julliard julliard at winehq.org
Thu Apr 5 12:31:45 CDT 2012


Module: wine
Branch: master
Commit: d8d89887d1c5356a2bfdd7cfe72ed439e8b624f8
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=d8d89887d1c5356a2bfdd7cfe72ed439e8b624f8

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Wed Apr  4 20:37:23 2012 +0200

ddrawex: Don't return a pointer to the implementation in IDirectDrawFactoryImpl_QueryInterface().

---

 dlls/ddrawex/main.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/dlls/ddrawex/main.c b/dlls/ddrawex/main.c
index 46c5716..568a5c6 100644
--- a/dlls/ddrawex/main.c
+++ b/dlls/ddrawex/main.c
@@ -168,19 +168,19 @@ static inline IDirectDrawFactoryImpl *impl_from_IDirectDrawFactory(IDirectDrawFa
 static HRESULT WINAPI IDirectDrawFactoryImpl_QueryInterface(IDirectDrawFactory *iface, REFIID riid,
         void **obj)
 {
-    IDirectDrawFactoryImpl *This = impl_from_IDirectDrawFactory(iface);
-
-    TRACE("(%p)->(%s,%p)\n", This, debugstr_guid(riid), obj);
+    TRACE("(%p)->(%s,%p)\n", iface, debugstr_guid(riid), obj);
 
     if (IsEqualGUID(riid, &IID_IUnknown)
         || IsEqualGUID(riid, &IID_IDirectDrawFactory))
     {
         IDirectDrawFactory_AddRef(iface);
-        *obj = This;
+        *obj = iface;
         return S_OK;
     }
 
-    WARN("(%p)->(%s,%p),not found\n",This,debugstr_guid(riid),obj);
+    WARN("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(riid));
+
+    *obj = NULL;
     return E_NOINTERFACE;
 }
 




More information about the wine-cvs mailing list