diff options
author | bryner@chromium.org <bryner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-26 03:57:08 +0000 |
---|---|---|
committer | bryner@chromium.org <bryner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-26 03:57:08 +0000 |
commit | 6bef474c46b809587637258c58e589ee38d0db40 (patch) | |
tree | 1235cac71a172678cbf07479fd98f742e8649145 /chrome/browser/safe_browsing/protocol_manager.cc | |
parent | 213aa2bbf00ed7db787e0a2a541df1f559cad11e (diff) | |
download | chromium_src-6bef474c46b809587637258c58e589ee38d0db40.zip chromium_src-6bef474c46b809587637258c58e589ee38d0db40.tar.gz chromium_src-6bef474c46b809587637258c58e589ee38d0db40.tar.bz2 |
Explicitly check the URLRequestStatus for SafeBrowsing responses.
This should help avoid parsing a partial response if the connection was closed after we started receiving a 200/204 response.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/10173018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134057 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/safe_browsing/protocol_manager.cc')
-rw-r--r-- | chrome/browser/safe_browsing/protocol_manager.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/chrome/browser/safe_browsing/protocol_manager.cc b/chrome/browser/safe_browsing/protocol_manager.cc index cce3e8c..bd01a23 100644 --- a/chrome/browser/safe_browsing/protocol_manager.cc +++ b/chrome/browser/safe_browsing/protocol_manager.cc @@ -206,7 +206,9 @@ void SafeBrowsingProtocolManager::OnURLFetchComplete( SafeBrowsingService::SafeBrowsingCheck* check = it->second; std::vector<SBFullHashResult> full_hashes; bool can_cache = false; - if (source->GetResponseCode() == 200 || source->GetResponseCode() == 204) { + if (source->GetStatus().is_success() && + (source->GetResponseCode() == 200 || + source->GetResponseCode() == 204)) { // For tracking our GetHash false positive (204) rate, compared to real // (200) responses. if (source->GetResponseCode() == 200) @@ -261,7 +263,7 @@ void SafeBrowsingProtocolManager::OnURLFetchComplete( update_timer_.Stop(); } - if (source->GetResponseCode() == 200) { + if (source->GetStatus().is_success() && source->GetResponseCode() == 200) { // We have data from the SafeBrowsing service. std::string data; source->GetResponseAsString(&data); |