diff options
author | lzheng@chromium.org <lzheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-07 21:57:08 +0000 |
---|---|---|
committer | lzheng@chromium.org <lzheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-07 21:57:08 +0000 |
commit | 6bb153eb3f16e75259d540a07d145a58cafa4006 (patch) | |
tree | 53dafe361970be1c48d350998b833fe235feb942 /chrome/browser/safe_browsing/protocol_manager.cc | |
parent | c073282650b32fc28aa93124d11c1fee579d79da (diff) | |
download | chromium_src-6bb153eb3f16e75259d540a07d145a58cafa4006.zip chromium_src-6bb153eb3f16e75259d540a07d145a58cafa4006.tar.gz chromium_src-6bb153eb3f16e75259d540a07d145a58cafa4006.tar.bz2 |
Add "?" to query strings if original url has no query string.
BUG=none
TEST=protocol_manager_unittest.cc
Review URL: http://codereview.chromium.org/3244005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58762 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 | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/chrome/browser/safe_browsing/protocol_manager.cc b/chrome/browser/safe_browsing/protocol_manager.cc index 340d0ca..aef07ae 100644 --- a/chrome/browser/safe_browsing/protocol_manager.cc +++ b/chrome/browser/safe_browsing/protocol_manager.cc @@ -649,6 +649,8 @@ std::string SafeBrowsingProtocolManager::ComposeUrl( prefix.c_str(), method.c_str(), client_name.c_str(), version.c_str()); if (!additional_query.empty()) { + DCHECK(url.find("?") != std::string::npos); + url.append("&"); url.append(additional_query); } return url; @@ -695,11 +697,18 @@ GURL SafeBrowsingProtocolManager::NextChunkUrl(const std::string& url) const { std::string next_url; if (!StartsWithASCII(url, "http://", false) && !StartsWithASCII(url, "https://", false)) { - next_url = "http://" + url; + next_url.append("http://"); + next_url.append(url); } else { next_url = url; } - if (!additional_query_.empty()) - next_url += additional_query_; + if (!additional_query_.empty()) { + if (next_url.find("?") != std::string::npos) { + next_url.append("&"); + } else { + next_url.append("?"); + } + next_url.append(additional_query_); + } return GURL(next_url); } |