summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortburkard@chromium.org <tburkard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-18 19:04:43 +0000
committertburkard@chromium.org <tburkard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-18 19:04:43 +0000
commit8b95671f1b05636f9ad2322a0bd15a15e526a661 (patch)
tree3c1fc2ed645a36422a6f68ac9f994c6401c388c2
parent49e97f26506f3bbebc07d32ceeab6e4a2f9e8c9b (diff)
downloadchromium_src-8b95671f1b05636f9ad2322a0bd15a15e526a661.zip
chromium_src-8b95671f1b05636f9ad2322a0bd15a15e526a661.tar.gz
chromium_src-8b95671f1b05636f9ad2322a0bd15a15e526a661.tar.bz2
Merge 92616 - Fix memory bug.
BUG=88531 R=mattm@chromium.org, noelutz@google.com Review URL: http://codereview.chromium.org/7379010 TBR=tburkard@chromium.org Review URL: http://codereview.chromium.org/7390035 git-svn-id: svn://svn.chromium.org/chrome/branches/782/src@92874 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/renderer_host/safe_browsing_resource_handler.cc15
1 files changed, 9 insertions, 6 deletions
diff --git a/chrome/browser/renderer_host/safe_browsing_resource_handler.cc b/chrome/browser/renderer_host/safe_browsing_resource_handler.cc
index 9d4647e..32c43cf 100644
--- a/chrome/browser/renderer_host/safe_browsing_resource_handler.cc
+++ b/chrome/browser/renderer_host/safe_browsing_resource_handler.cc
@@ -176,9 +176,15 @@ void SafeBrowsingResourceHandler::OnBrowseUrlCheckResult(
// Continue the request.
ResumeRequest();
} else {
+ bool should_show_blocking_page = true;
const net::URLRequest* request = rdh_->GetURLRequest(
GlobalRequestID(render_process_host_id_, deferred_request_id_));
- if (request->load_flags() & net::LOAD_PRERENDERING) {
+ if (request->load_flags() & net::LOAD_PREFETCH) {
+ // Don't prefetch resources that fail safe browsing, disallow
+ // them.
+ rdh_->CancelRequest(render_process_host_id_, deferred_request_id_, false);
+ should_show_blocking_page = false;
+ } else if (request->load_flags() & net::LOAD_PRERENDERING) {
prerender::PrerenderTracker* prerender_tracker = g_browser_process->
prerender_tracker();
if (prerender_tracker->TryCancelOnIOThread(render_process_host_id_,
@@ -186,13 +192,10 @@ void SafeBrowsingResourceHandler::OnBrowseUrlCheckResult(
prerender::FINAL_STATUS_SAFE_BROWSING)) {
rdh_->CancelRequest(render_process_host_id_, deferred_request_id_,
false);
+ should_show_blocking_page = false;
}
}
- if (request->load_flags() & net::LOAD_PREFETCH) {
- // Don't prefetch resources that fail safe browsing, disallow
- // them.
- rdh_->CancelRequest(render_process_host_id_, deferred_request_id_, false);
- } else {
+ if (should_show_blocking_page) {
StartDisplayingBlockingPage(url, result);
}
}