Index: base/strings/string_util.cc |
diff --git a/base/strings/string_util.cc b/base/strings/string_util.cc |
index 6f6d6e2b6bd240997c822374adf3126108881d9e..cc7769343b5a592a2d081c89e3203dc82be8f720 100644 |
--- a/base/strings/string_util.cc |
+++ b/base/strings/string_util.cc |
@@ -420,14 +420,12 @@ bool IsStringUTF8(const StringPiece& str) { |
return true; |
} |
-} // namespace base |
- |
template<typename Iter> |
static inline bool DoLowerCaseEqualsASCII(Iter a_begin, |
Iter a_end, |
const char* b) { |
for (Iter it = a_begin; it != a_end; ++it, ++b) { |
- if (!*b || base::ToLowerASCII(*it) != *b) |
+ if (!*b || ToLowerASCII(*it) != *b) |
return false; |
} |
return *b == 0; |
@@ -460,18 +458,32 @@ bool LowerCaseEqualsASCII(const char* a_begin, |
return DoLowerCaseEqualsASCII(a_begin, a_end, b); |
} |
+bool LowerCaseEqualsASCII(const char* a_begin, |
+ const char* a_end, |
+ const char* b_begin, |
+ const char* b_end) { |
+ while (a_begin != a_end && b_begin != b_end && |
+ ToLowerASCII(*a_begin) == *b_begin) { |
+ a_begin++; |
+ b_begin++; |
+ } |
+ return a_begin == a_end && b_begin == b_end; |
+} |
+ |
bool LowerCaseEqualsASCII(const char16* a_begin, |
const char16* a_end, |
const char* b) { |
return DoLowerCaseEqualsASCII(a_begin, a_end, b); |
} |
-bool EqualsASCII(const string16& a, const base::StringPiece& b) { |
+bool EqualsASCII(const string16& a, const StringPiece& b) { |
if (a.length() != b.length()) |
return false; |
return std::equal(b.begin(), b.end(), a.begin()); |
} |
+} // namespace base |
+ |
bool StartsWithASCII(const std::string& str, |
const std::string& search, |
bool case_sensitive) { |