summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome_frame/bho.cc3
-rw-r--r--chrome_frame/chrome_active_document.cc3
2 files changed, 4 insertions, 2 deletions
diff --git a/chrome_frame/bho.cc b/chrome_frame/bho.cc
index aa333b7..e679a20 100644
--- a/chrome_frame/bho.cc
+++ b/chrome_frame/bho.cc
@@ -254,7 +254,8 @@ HRESULT Bho::OnHttpEquiv(IBrowserService_OnHttpEquiv_Fn original_httpequiv,
} else if (done) {
DLOG(INFO) << "Releasing cached data.";
NavigationManager* mgr = NavigationManager::GetThreadInstance();
- mgr->ReleaseRequestData();
+ if (mgr)
+ mgr->ReleaseRequestData();
}
return original_httpequiv(browser, shell_view, done, in_arg, out_arg);
diff --git a/chrome_frame/chrome_active_document.cc b/chrome_frame/chrome_active_document.cc
index a0bcae4..3c10d15 100644
--- a/chrome_frame/chrome_active_document.cc
+++ b/chrome_frame/chrome_active_document.cc
@@ -232,11 +232,12 @@ STDMETHODIMP ChromeActiveDocument::Load(BOOL fully_avalable,
moniker_name, bind_context,
mgr ? mgr->original_url_with_fragment() : std::wstring()));
+ scoped_refptr<RequestData> data;
if (mgr) {
mgr->set_original_url_with_fragment(L"");
+ data = mgr->GetActiveRequestData(url.c_str());
}
- scoped_refptr<RequestData> data(mgr->GetActiveRequestData(url.c_str()));
DLOG_IF(INFO, data) << "Got active request data";
DLOG_IF(WARNING, data.get() == NULL) << "NO active request data";