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

Unified Diff: components/url_formatter/url_formatter.cc

Issue 2953943003: base::OffsetAdjuster: Refactor offset limiting logic into the base::OffsetAdjuster (Closed)
Patch Set: fix test Created 3 years, 5 months 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
« no previous file with comments | « base/strings/utf_offset_string_conversions_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/url_formatter/url_formatter.cc
diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatter/url_formatter.cc
index 1b506ee67863d93800081dfb52487309a3ace337..461bc7942c533cafb437cea27a8b56e0d48f3741 100644
--- a/components/url_formatter/url_formatter.cc
+++ b/components/url_formatter/url_formatter.cc
@@ -418,14 +418,13 @@ base::string16 FormatUrl(const GURL& url,
url::Parsed* new_parsed,
size_t* prefix_end,
size_t* offset_for_adjustment) {
- std::vector<size_t> offsets;
- if (offset_for_adjustment)
- offsets.push_back(*offset_for_adjustment);
- base::string16 result =
- FormatUrlWithOffsets(url, format_types, unescape_rules, new_parsed,
- prefix_end, &offsets);
- if (offset_for_adjustment)
- *offset_for_adjustment = offsets[0];
+ base::OffsetAdjuster::Adjustments adjustments;
+ base::string16 result = FormatUrlWithAdjustments(
+ url, format_types, unescape_rules, new_parsed, prefix_end, &adjustments);
+ if (offset_for_adjustment) {
+ base::OffsetAdjuster::AdjustOffset(adjustments, offset_for_adjustment,
+ result.length());
+ }
return result;
}
@@ -437,16 +436,11 @@ base::string16 FormatUrlWithOffsets(
size_t* prefix_end,
std::vector<size_t>* offsets_for_adjustment) {
base::OffsetAdjuster::Adjustments adjustments;
- const base::string16& format_url_return_value =
- FormatUrlWithAdjustments(url, format_types, unescape_rules, new_parsed,
- prefix_end, &adjustments);
- base::OffsetAdjuster::AdjustOffsets(adjustments, offsets_for_adjustment);
- if (offsets_for_adjustment) {
- std::for_each(
- offsets_for_adjustment->begin(), offsets_for_adjustment->end(),
- base::LimitOffset<std::string>(format_url_return_value.length()));
- }
- return format_url_return_value;
+ const base::string16& result = FormatUrlWithAdjustments(
+ url, format_types, unescape_rules, new_parsed, prefix_end, &adjustments);
+ base::OffsetAdjuster::AdjustOffsets(adjustments, offsets_for_adjustment,
+ result.length());
+ return result;
}
base::string16 FormatUrlWithAdjustments(
@@ -456,7 +450,7 @@ base::string16 FormatUrlWithAdjustments(
url::Parsed* new_parsed,
size_t* prefix_end,
base::OffsetAdjuster::Adjustments* adjustments) {
- DCHECK(adjustments != NULL);
+ DCHECK(adjustments);
adjustments->clear();
url::Parsed parsed_temp;
if (!new_parsed)
« no previous file with comments | « base/strings/utf_offset_string_conversions_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698