Chromium Code Reviews| 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..cebd25d43770becb296a5020653a7a8ddcc04bb5 100644 |
| --- a/net/http/http_request_headers.cc |
| +++ b/net/http/http_request_headers.cc |
| @@ -5,6 +5,7 @@ |
| #include "net/http/http_request_headers.h" |
| #include "base/logging.h" |
| +#include "base/metrics/histogram.h" |
| #include "base/strings/string_split.h" |
| #include "base/strings/string_util.h" |
| #include "base/strings/stringprintf.h" |
| @@ -86,6 +87,8 @@ void HttpRequestHeaders::SetHeader(const base::StringPiece& key, |
| const base::StringPiece& value) { |
| DCHECK(HttpUtil::IsValidHeaderName(key.as_string())); |
| DCHECK(HttpUtil::IsValidHeaderValue(value.as_string())); |
| + UMA_HISTOGRAM_BOOLEAN("Net.HttpRequestHeaderValueValidInRFC7230", |
| + HttpUtil::IsValidHeaderValueRFC7230(value.as_string())); |
|
davidben
2015/09/29 16:32:59
This makes an unnecessary copy. The lines above do
hiroshige
2015/09/30 08:19:23
Done by using StringPiece.
|
| HeaderVector::iterator it = FindHeader(key); |
| if (it != headers_.end()) |
| it->value.assign(value.data(), value.size()); |
| @@ -97,6 +100,8 @@ void HttpRequestHeaders::SetHeaderIfMissing(const base::StringPiece& key, |
| const base::StringPiece& value) { |
| DCHECK(HttpUtil::IsValidHeaderName(key.as_string())); |
| DCHECK(HttpUtil::IsValidHeaderValue(value.as_string())); |
| + UMA_HISTOGRAM_BOOLEAN("Net.HttpRequestHeaderValueValidInRFC7230", |
| + HttpUtil::IsValidHeaderValueRFC7230(value.as_string())); |
| HeaderVector::iterator it = FindHeader(key); |
| if (it == headers_.end()) |
| headers_.push_back(HeaderKeyValuePair(key, value)); |