[PATCH] oleaut32: Return proper interface pointers

Nikolay Sivov nsivov at codeweavers.com
Fri Dec 9 23:54:54 CST 2016


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
 dlls/oleaut32/olepicture.c | 2 +-
 dlls/oleaut32/typelib.c    | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c
index bfca22f..ac8b207 100644
--- a/dlls/oleaut32/olepicture.c
+++ b/dlls/oleaut32/olepicture.c
@@ -461,7 +461,7 @@ static HRESULT WINAPI OLEPictureImpl_QueryInterface(
   *ppvObject = 0;
 
   if (IsEqualIID(&IID_IUnknown, riid) || IsEqualIID(&IID_IPicture, riid))
-    *ppvObject = This;
+    *ppvObject = &This->IPicture_iface;
   else if (IsEqualIID(&IID_IDispatch, riid))
     *ppvObject = &This->IDispatch_iface;
   else if (IsEqualIID(&IID_IPictureDisp, riid))
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index 4fdfbeb..3df9631 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -5579,7 +5579,7 @@ static HRESULT WINAPI ITypeInfo_fnQueryInterface(
     if(IsEqualIID(riid, &IID_IUnknown) ||
             IsEqualIID(riid,&IID_ITypeInfo)||
             IsEqualIID(riid,&IID_ITypeInfo2))
-        *ppvObject = This;
+        *ppvObject = &This->ITypeInfo2_iface;
     else if(IsEqualIID(riid, &IID_ICreateTypeInfo) ||
              IsEqualIID(riid, &IID_ICreateTypeInfo2))
         *ppvObject = &This->ICreateTypeInfo2_iface;
-- 
2.10.2




More information about the wine-patches mailing list