Jacek Caban : mshtml: Fixed IOleUndoManager::QueryInterface implementation.

Alexandre Julliard julliard at winehq.org
Mon Dec 20 17:49:53 CST 2010


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Dec 20 19:09:34 2010 +0100

mshtml: Fixed IOleUndoManager::QueryInterface implementation.

---

 dlls/mshtml/service.c |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/dlls/mshtml/service.c b/dlls/mshtml/service.c
index 4b9327d..7346195 100644
--- a/dlls/mshtml/service.c
+++ b/dlls/mshtml/service.c
@@ -49,19 +49,20 @@ static HRESULT WINAPI OleUndoManager_QueryInterface(IOleUndoManager *iface, REFI
 {
     UndoManager *This = impl_from_IOleUndoManager(iface);
 
-    *ppv = NULL;
-
     if(IsEqualGUID(riid, &IID_IUnknown)) {
         TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
         *ppv = &This->IOleUndoManager_iface;
     }else if(IsEqualGUID(riid, &IID_IOleUndoManager)) {
         TRACE("(%p)->(IID_IOleUndoManager %p)\n", This, ppv);
         *ppv = &This->IOleUndoManager_iface;
+    }else {
+        *ppv = NULL;
+        FIXME("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
+        return E_NOINTERFACE;
     }
 
-
-    FIXME("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
-    return E_NOINTERFACE;
+    IUnknown_AddRef((IUnknown*)*ppv);
+    return S_OK;
 }
 
 static ULONG WINAPI OleUndoManager_AddRef(IOleUndoManager *iface)




More information about the wine-cvs mailing list