Jacek Caban : mshtml: Access document object via browser object in IBindCallbackRedirect:: Redirect.

Alexandre Julliard julliard at winehq.org
Thu Mar 14 18:33:21 CDT 2019


Module: wine
Branch: master
Commit: 70a964d4f9e194cddb44c10f3791c69b13a59346
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=70a964d4f9e194cddb44c10f3791c69b13a59346

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Thu Mar 14 14:13:36 2019 +0100

mshtml: Access document object via browser object in IBindCallbackRedirect::Redirect.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/mshtml/navigate.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/dlls/mshtml/navigate.c b/dlls/mshtml/navigate.c
index 4715cbc..49549b9 100644
--- a/dlls/mshtml/navigate.c
+++ b/dlls/mshtml/navigate.c
@@ -590,22 +590,22 @@ static ULONG WINAPI BindCallbackRedirect_Release(IBindCallbackRedirect *iface)
 static HRESULT WINAPI BindCallbackRedirect_Redirect(IBindCallbackRedirect *iface, const WCHAR *url, VARIANT_BOOL *vbCancel)
 {
     BSCallback *This = impl_from_IBindCallbackRedirect(iface);
-    HTMLDocumentObj *doc_obj;
+    GeckoBrowser *browser;
     BOOL cancel = FALSE;
     BSTR frame_name = NULL;
     HRESULT hres = S_OK;
 
     TRACE("(%p)->(%s %p)\n", This, debugstr_w(url), vbCancel);
 
-    if(This->window && This->window->base.outer_window && (doc_obj = This->window->base.outer_window->doc_obj)
-       && doc_obj->doc_object_service) {
-        if(This->window->base.outer_window != doc_obj->basedoc.window) {
+    if(This->window && This->window->base.outer_window && (browser = This->window->base.outer_window->browser)
+       && browser->doc->doc_object_service) {
+        if(is_main_content_window(This->window->base.outer_window)) {
             hres = IHTMLWindow2_get_name(&This->window->base.IHTMLWindow2_iface, &frame_name);
             if(FAILED(hres))
                 return hres;
         }
 
-        hres = IDocObjectService_FireBeforeNavigate2(doc_obj->doc_object_service, NULL, url, 0x40,
+        hres = IDocObjectService_FireBeforeNavigate2(browser->doc->doc_object_service, NULL, url, 0x40,
                                                      frame_name, NULL, 0, NULL, TRUE, &cancel);
         SysFreeString(frame_name);
     }




More information about the wine-cvs mailing list