Module: wine Branch: master Commit: d0b4717cdb156f237c52624be33412bcb9f6a7d7 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=d0b4717cdb156f237c52624b...
Author: Robert Shearman rob@codeweavers.com Date: Thu Aug 31 17:18:36 2006 +0100
ole32: Do a QueryInterface for IOleLink in OleLoad, like native does.
---
dlls/ole32/ole2.c | 25 +++++++++++++++++++------ 1 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/dlls/ole32/ole2.c b/dlls/ole32/ole2.c index 8f0629c..c6df7ed 100644 --- a/dlls/ole32/ole2.c +++ b/dlls/ole32/ole2.c @@ -1007,12 +1007,13 @@ HRESULT WINAPI OleLoad( } }
- /* - * Initialize the object with it's IPersistStorage interface. - */ - hres = IOleObject_QueryInterface(pUnk, - &IID_IPersistStorage, - (void**)&persistStorage); + if (SUCCEEDED(hres)) + /* + * Initialize the object with it's IPersistStorage interface. + */ + hres = IOleObject_QueryInterface(pUnk, + &IID_IPersistStorage, + (void**)&persistStorage);
if (SUCCEEDED(hres)) { @@ -1034,6 +1035,18 @@ HRESULT WINAPI OleLoad( if (pOleObject) IOleObject_Release(pOleObject);
+ if (SUCCEEDED(hres)) + { + IOleLink *pOleLink; + HRESULT hres1; + hres1 = IUnknown_QueryInterface(pUnk, &IID_IOleLink, (void **)&pOleLink); + if (SUCCEEDED(hres1)) + { + FIXME("handle OLE link\n"); + IOleLink_Release(pOleLink); + } + } + if (FAILED(hres)) { IUnknown_Release(pUnk);