Index: components/flags_ui/flags_state.cc |
diff --git a/components/flags_ui/flags_state.cc b/components/flags_ui/flags_state.cc |
index da1db2c582f2a23d94195ad055ee16ede16c38e7..2e8f1637ef48a0c34512c9d9618b0f57ea862d8a 100644 |
--- a/components/flags_ui/flags_state.cc |
+++ b/components/flags_ui/flags_state.cc |
@@ -13,6 +13,7 @@ |
#include "base/macros.h" |
#include "base/metrics/field_trial.h" |
#include "base/stl_util.h" |
+#include "base/strings/string_piece.h" |
#include "base/strings/string_util.h" |
#include "base/strings/utf_string_conversions.h" |
#include "base/values.h" |
@@ -389,13 +390,13 @@ void FlagsState::RemoveFlagsSwitches( |
const std::string& existing_value_utf8 = existing_value; |
#endif |
- std::vector<std::string> features = |
+ std::vector<base::StringPiece> features = |
base::FeatureList::SplitFeatureListString(existing_value_utf8); |
- std::vector<std::string> remaining_features; |
+ std::vector<base::StringPiece> remaining_features; |
// For any featrue name in |features| that is not in |switch_added_values| - |
// i.e. it wasn't added by about_flags code, add it to |remaining_features|. |
- for (const std::string& feature : features) { |
- if (!base::ContainsKey(switch_added_values, feature)) |
+ for (const auto& feature : features) { |
+ if (!base::ContainsKey(switch_added_values, feature.as_string())) |
remaining_features.push_back(feature); |
} |
@@ -683,7 +684,7 @@ void FlagsState::MergeFeatureCommandLineSwitch( |
base::CommandLine* command_line) { |
std::string original_switch_value = |
command_line->GetSwitchValueASCII(switch_name); |
- std::vector<std::string> features = |
+ std::vector<base::StringPiece> features = |
base::FeatureList::SplitFeatureListString(original_switch_value); |
// Only add features that don't already exist in the lists. |
// Note: The base::ContainsValue() call results in O(n^2) performance, but in |