[PATCH] riched20: Return proper interface pointers

Nikolay Sivov nsivov at codeweavers.com
Thu Feb 9 07:17:15 CST 2017


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
 dlls/riched20/clipboard.c    | 4 ++--
 dlls/riched20/tests/txtsrv.c | 2 +-
 dlls/riched20/txthost.c      | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/riched20/clipboard.c b/dlls/riched20/clipboard.c
index d4560dbc60..578fb02fd9 100644
--- a/dlls/riched20/clipboard.c
+++ b/dlls/riched20/clipboard.c
@@ -66,7 +66,7 @@ static HRESULT WINAPI EnumFormatImpl_QueryInterface(IEnumFORMATETC *iface, REFII
 
     if (IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_IEnumFORMATETC)) {
         IEnumFORMATETC_AddRef(iface);
-        *ppvObj = This;
+        *ppvObj = &This->IEnumFORMATETC_iface;
         return S_OK;
     }
     *ppvObj = NULL;
@@ -183,7 +183,7 @@ static HRESULT WINAPI DataObjectImpl_QueryInterface(IDataObject *iface, REFIID r
 
     if (IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_IDataObject)) {
         IDataObject_AddRef(iface);
-        *ppvObj = This;
+        *ppvObj = &This->IDataObject_iface;
         return S_OK;
     }
     *ppvObj = NULL;
diff --git a/dlls/riched20/tests/txtsrv.c b/dlls/riched20/tests/txtsrv.c
index 4be3106514..73ca7cd753 100644
--- a/dlls/riched20/tests/txtsrv.c
+++ b/dlls/riched20/tests/txtsrv.c
@@ -99,7 +99,7 @@ static HRESULT WINAPI ITextHostImpl_QueryInterface(ITextHost *iface,
     ITextHostTestImpl *This = impl_from_ITextHost(iface);
 
     if (IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, pIID_ITextHost)) {
-        *ppvObject = This;
+        *ppvObject = &This->ITextHost_iface;
         ITextHost_AddRef((ITextHost *)*ppvObject);
         return S_OK;
     }
diff --git a/dlls/riched20/txthost.c b/dlls/riched20/txthost.c
index b99c9334d0..0e51ecf850 100644
--- a/dlls/riched20/txthost.c
+++ b/dlls/riched20/txthost.c
@@ -76,7 +76,7 @@ static HRESULT WINAPI ITextHostImpl_QueryInterface(ITextHost *iface, REFIID riid
     ITextHostImpl *This = impl_from_ITextHost(iface);
 
     if (IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, &IID_ITextHost)) {
-        *ppvObject = This;
+        *ppvObject = &This->ITextHost_iface;
         ITextHost_AddRef((ITextHost *)*ppvObject);
         return S_OK;
     }
-- 
2.11.0




More information about the wine-patches mailing list