summaryrefslogtreecommitdiffstats
path: root/net/http/http_response_headers.cc
diff options
context:
space:
mode:
authortedvessenes@gmail.com <tedvessenes@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-18 17:16:27 +0000
committertedvessenes@gmail.com <tedvessenes@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-18 17:16:27 +0000
commitce87e24351c86bc40b32dca51fe2ebbabc603b1a (patch)
tree8184c32b18bbda29760be2e1678ad4a6fd7fd539 /net/http/http_response_headers.cc
parent71fdf77a393f95290a872bb3916f21c0bf2b4dbc (diff)
downloadchromium_src-ce87e24351c86bc40b32dca51fe2ebbabc603b1a.zip
chromium_src-ce87e24351c86bc40b32dca51fe2ebbabc603b1a.tar.gz
chromium_src-ce87e24351c86bc40b32dca51fe2ebbabc603b1a.tar.bz2
Standardize StringToInt{,64} interface.
These changes address issue #106655. All variants of StringToInt have been converted to use the StringPiece class. One instance of conversion, in chrome/browser/history/text_database.cc, required copying an underlying string. This is because the string type in question could use 8 or 16 bit characters depending on the OS type, and because StringPiece is not implemented as a template, the code cannot specify whether to create a StringPiece or StringPiece16. This should be remedied in a future CL. R=erikwright@chromium.org BUG=106655 TEST= Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=114929 Review URL: http://codereview.chromium.org/8921006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114944 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_response_headers.cc')
-rw-r--r--net/http/http_response_headers.cc20
1 files changed, 11 insertions, 9 deletions
diff --git a/net/http/http_response_headers.cc b/net/http/http_response_headers.cc
index f249db8..98bd052 100644
--- a/net/http/http_response_headers.cc
+++ b/net/http/http_response_headers.cc
@@ -15,11 +15,13 @@
#include "base/metrics/histogram.h"
#include "base/pickle.h"
#include "base/string_number_conversions.h"
+#include "base/string_piece.h"
#include "base/string_util.h"
#include "base/time.h"
#include "net/base/escape.h"
#include "net/http/http_util.h"
+using base::StringPiece;
using base::Time;
using base::TimeDelta;
@@ -698,7 +700,7 @@ void HttpResponseHeaders::ParseStatusLine(
raw_headers_.push_back(' ');
raw_headers_.append(code, p);
raw_headers_.push_back(' ');
- base::StringToInt(code, p, &response_code_);
+ base::StringToInt(StringPiece(code, p), &response_code_);
// Skip whitespace.
while (*p == ' ')
@@ -1071,8 +1073,8 @@ bool HttpResponseHeaders::GetMaxAgeValue(TimeDelta* result) const {
value.begin() + kMaxAgePrefixLen,
kMaxAgePrefix)) {
int64 seconds;
- base::StringToInt64(value.begin() + kMaxAgePrefixLen,
- value.end(),
+ base::StringToInt64(StringPiece(value.begin() + kMaxAgePrefixLen,
+ value.end()),
&seconds);
*result = TimeDelta::FromSeconds(seconds);
return true;
@@ -1250,8 +1252,8 @@ bool HttpResponseHeaders::GetContentRange(int64* first_byte_position,
byte_range_resp_spec.begin() + minus_position;
HttpUtil::TrimLWS(&first_byte_pos_begin, &first_byte_pos_end);
- bool ok = base::StringToInt64(first_byte_pos_begin,
- first_byte_pos_end,
+ bool ok = base::StringToInt64(StringPiece(first_byte_pos_begin,
+ first_byte_pos_end),
first_byte_position);
// Obtain last-byte-pos.
@@ -1261,8 +1263,8 @@ bool HttpResponseHeaders::GetContentRange(int64* first_byte_position,
byte_range_resp_spec.end();
HttpUtil::TrimLWS(&last_byte_pos_begin, &last_byte_pos_end);
- ok &= base::StringToInt64(last_byte_pos_begin,
- last_byte_pos_end,
+ ok &= base::StringToInt64(StringPiece(last_byte_pos_begin,
+ last_byte_pos_end),
last_byte_position);
if (!ok) {
*first_byte_position = *last_byte_position = -1;
@@ -1286,8 +1288,8 @@ bool HttpResponseHeaders::GetContentRange(int64* first_byte_position,
if (LowerCaseEqualsASCII(instance_length_begin, instance_length_end, "*")) {
return false;
- } else if (!base::StringToInt64(instance_length_begin,
- instance_length_end,
+ } else if (!base::StringToInt64(StringPiece(instance_length_begin,
+ instance_length_end),
instance_length)) {
*instance_length = -1;
return false;