From b6d081804339ac85f61ad60ddfb8a178705a6bca Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Fri, 7 Jul 2006 15:15:24 +0200 Subject: [PATCH] shdocvw: Call GetContainer in SetClientSite. --- dlls/shdocvw/oleobject.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/dlls/shdocvw/oleobject.c b/dlls/shdocvw/oleobject.c index a6df8a6d07a..513b128a169 100644 --- a/dlls/shdocvw/oleobject.c +++ b/dlls/shdocvw/oleobject.c @@ -26,6 +26,7 @@ #include #include "wine/debug.h" #include "shdocvw.h" +#include "htiframe.h" WINE_DEFAULT_DEBUG_CHANNEL(shdocvw); @@ -206,6 +207,7 @@ static ULONG WINAPI OleObject_Release(IOleObject *iface) static HRESULT WINAPI OleObject_SetClientSite(IOleObject *iface, LPOLECLIENTSITE pClientSite) { WebBrowser *This = OLEOBJ_THIS(iface); + IOleContainer *container; HRESULT hres; TRACE("(%p)->(%p)\n", This, pClientSite); @@ -247,6 +249,20 @@ static HRESULT WINAPI OleObject_SetClientSite(IOleObject *iface, LPOLECLIENTSITE if(FAILED(hres)) This->doc_host.hostui = NULL; + hres = IOleClientSite_GetContainer(This->client, &container); + if(SUCCEEDED(hres)) { + ITargetContainer *target_container; + + hres = IOleContainer_QueryInterface(container, &IID_ITargetContainer, + (void**)&target_container); + if(SUCCEEDED(hres)) { + FIXME("Unsupported ITargetContainer\n"); + ITargetContainer_Release(target_container); + } + + IOleContainer_Release(container); + } + create_shell_embedding_hwnd(This); return S_OK;