Jacek Caban : shdocvw: Call GetContainer in SetClientSite.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Jul 7 11:10:36 CDT 2006


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Fri Jul  7 15:15:24 2006 +0200

shdocvw: Call GetContainer in SetClientSite.

---

 dlls/shdocvw/oleobject.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/dlls/shdocvw/oleobject.c b/dlls/shdocvw/oleobject.c
index a6df8a6..513b128 100644
--- a/dlls/shdocvw/oleobject.c
+++ b/dlls/shdocvw/oleobject.c
@@ -26,6 +26,7 @@
 #include <string.h>
 #include "wine/debug.h"
 #include "shdocvw.h"
+#include "htiframe.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
 
@@ -206,6 +207,7 @@ static ULONG WINAPI OleObject_Release(IO
 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_SetClien
     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;




More information about the wine-cvs mailing list