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

Alexandre Julliard julliard at winehq.org
Wed Mar 14 13:56:10 CDT 2012


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Tue Mar 13 20:31:36 2012 +0100

ddraw: Don't return a pointer to the implementation in IDirectDrawClassFactoryImpl_QueryInterface().

---

 dlls/ddraw/main.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/dlls/ddraw/main.c b/dlls/ddraw/main.c
index c58ba44..400bb30 100644
--- a/dlls/ddraw/main.c
+++ b/dlls/ddraw/main.c
@@ -545,19 +545,18 @@ static inline IClassFactoryImpl *impl_from_IClassFactory(IClassFactory *iface)
 static HRESULT WINAPI IDirectDrawClassFactoryImpl_QueryInterface(IClassFactory *iface, REFIID riid,
         void **obj)
 {
-    IClassFactoryImpl *This = impl_from_IClassFactory(iface);
-
     TRACE("iface %p, riid %s, object %p.\n", iface, debugstr_guid(riid), obj);
 
     if (IsEqualGUID(riid, &IID_IUnknown)
         || IsEqualGUID(riid, &IID_IClassFactory))
     {
         IClassFactory_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));
+
     return E_NOINTERFACE;
 }
 




More information about the wine-cvs mailing list