Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6189)

Unified Diff: chrome/browser/loader/safe_browsing_resource_throttle.cc

Issue 2616653002: Have a list of pending checks instead of pending clients (Closed)
Patch Set: Now with a unit test! Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/loader/safe_browsing_resource_throttle.cc
diff --git a/chrome/browser/loader/safe_browsing_resource_throttle.cc b/chrome/browser/loader/safe_browsing_resource_throttle.cc
index 8fccf4b69c4e8e2b48cc580cdb8751c89e2cab7b..54558e2d77677dbfc18acdea19f0011794f8a20f 100644
--- a/chrome/browser/loader/safe_browsing_resource_throttle.cc
+++ b/chrome/browser/loader/safe_browsing_resource_throttle.cc
@@ -238,9 +238,10 @@ void SafeBrowsingResourceThrottle::OnCheckBrowseUrlResult(
CHECK(url.is_valid());
CHECK(url_being_checked_.is_valid());
if (url != url_being_checked_) {
- char buf[2000];
- snprintf(buf, sizeof(buf), "sbtr::ocbur:%s -- %s\n", url.spec().c_str(),
- url_being_checked_.spec().c_str());
+ bool url_had_timed_out = base::ContainsValue(timed_out_urls_, url);
+ char buf[1000];
+ snprintf(buf, sizeof(buf), "sbtr::ocbur:%d:%s -- %s\n", url_had_timed_out,
+ url.spec().c_str(), url_being_checked_.spec().c_str());
base::debug::Alias(buf);
CHECK(false) << "buf: " << buf;
}
@@ -401,8 +402,7 @@ bool SafeBrowsingResourceThrottle::CheckUrl(const GURL& url) {
// Start a timer to abort the check if it takes too long.
// TODO(nparker): Set this only when we defer, based on remaining time,
// so we don't cancel earlier than necessary.
- timer_.Start(FROM_HERE,
- base::TimeDelta::FromMilliseconds(kCheckUrlTimeoutMs),
+ timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kCheckUrlTimeoutMs),
this, &SafeBrowsingResourceThrottle::OnCheckUrlTimeout);
return false;
@@ -415,6 +415,7 @@ void SafeBrowsingResourceThrottle::OnCheckUrlTimeout() {
OnCheckBrowseUrlResult(url_being_checked_, safe_browsing::SB_THREAT_TYPE_SAFE,
safe_browsing::ThreatMetadata());
+ timed_out_urls_.push_back(url_being_checked_);
}
void SafeBrowsingResourceThrottle::ResumeRequest() {

Powered by Google App Engine
This is Rietveld 408576698