From: Steve Lamerton Date: Thu, 12 Apr 2012 21:15:16 +0000 (+0000) Subject: Always check that we get a valid IDispatch* from get_Document as sometimes the call... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/601d0ba7c6b96c9082c0a8c2c6c4f93d5bb7f366 Always check that we get a valid IDispatch* from get_Document as sometimes the call can succeed but return NULL. Fixes #14182 git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/webview_ie.cpp b/src/msw/webview_ie.cpp index 2bdae652c0..c42c1a00ea 100644 --- a/src/msw/webview_ie.cpp +++ b/src/msw/webview_ie.cpp @@ -874,12 +874,13 @@ void wxWebViewIE::ExecCommand(wxString command) IHTMLDocument2* wxWebViewIE::GetDocument() const { - IDispatch* dispatch; + IDispatch* dispatch = NULL; HRESULT result = m_webBrowser->get_Document(&dispatch); - if(SUCCEEDED(result)) + if(dispatch && SUCCEEDED(result)) { IHTMLDocument2* document; dispatch->QueryInterface(IID_IHTMLDocument2, (void**)&document); + dispatch->Release(); //document is set to null automatically if the interface isn't supported return document; }