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

Unified Diff: net/http/http_request_headers.cc

Issue 1549063003: Don't unnecessarily copy strings (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years 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
« base/strings/string_split.cc ('K') | « base/strings/string_split_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/http/http_request_headers.cc
diff --git a/net/http/http_request_headers.cc b/net/http/http_request_headers.cc
index c2eee59af95f8408a9d11ad774986e302270175b..ce646dc20817144e0fb51aa971994c8a88f8f86d 100644
--- a/net/http/http_request_headers.cc
+++ b/net/http/http_request_headers.cc
@@ -154,15 +154,10 @@ void HttpRequestHeaders::AddHeaderFromString(
void HttpRequestHeaders::AddHeadersFromString(
const base::StringPiece& headers) {
- // TODO(willchan): Consider adding more StringPiece support in string_util.h
- // to eliminate copies.
- std::vector<std::string> header_line_vector;
- base::SplitStringUsingSubstr(headers.as_string(), "\r\n",
- &header_line_vector);
- for (std::vector<std::string>::const_iterator it = header_line_vector.begin();
- it != header_line_vector.end(); ++it) {
- if (!it->empty())
- AddHeaderFromString(*it);
+ for (const base::StringPiece& header :
+ base::SplitStringPieceUsingSubstr(headers, "\r\n")) {
+ if (!header.empty())
+ AddHeaderFromString(header);
}
}
« base/strings/string_split.cc ('K') | « base/strings/string_split_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698