Module: wine Branch: master Commit: 0b48542f1f647a953877797f9eda1e220b38c0f8 URL: http://source.winehq.org/git/wine.git/?a=commit;h=0b48542f1f647a953877797f9e...
Author: Jacek Caban jacek@codeweavers.com Date: Fri Mar 9 16:54:26 2007 +0100
shdocvw: Always set hostui to NULL in SetClientsite.
---
dlls/shdocvw/oleobject.c | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/dlls/shdocvw/oleobject.c b/dlls/shdocvw/oleobject.c index dc795f8..307fe0b 100644 --- a/dlls/shdocvw/oleobject.c +++ b/dlls/shdocvw/oleobject.c @@ -289,25 +289,26 @@ static HRESULT WINAPI OleObject_SetClientSite(IOleObject *iface, LPOLECLIENTSITE This->inplace = NULL; }
- if(This->doc_host.hostui) + if(This->doc_host.hostui) { IDocHostUIHandler_Release(This->doc_host.hostui); + This->doc_host.hostui = NULL; + } + if(This->client) IOleClientSite_Release(This->client);
+ This->client = pClientSite; + if(!pClientSite) { if(This->doc_host.document) deactivate_document(&This->doc_host); - This->client = NULL; return S_OK; }
- This->client = pClientSite; IOleClientSite_AddRef(pClientSite);
- hres = IOleClientSite_QueryInterface(This->client, &IID_IDocHostUIHandler, - (void**)&This->doc_host.hostui); - if(FAILED(hres)) - This->doc_host.hostui = NULL; + IOleClientSite_QueryInterface(This->client, &IID_IDocHostUIHandler, + (void**)&This->doc_host.hostui);
hres = IOleClientSite_GetContainer(This->client, &container); if(SUCCEEDED(hres)) {