Chromium Code Reviews| Index: components/search_engines/template_url_prepopulate_data.cc |
| diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc |
| index 229bf87e06378887012efc9b7fd0f257d2f749a2..0b2121d05ae29a5d7f3440eb96c5b11958a0b912 100644 |
| --- a/components/search_engines/template_url_prepopulate_data.cc |
| +++ b/components/search_engines/template_url_prepopulate_data.cc |
| @@ -1016,9 +1016,9 @@ std::unique_ptr<TemplateURLData> MakePrepopulatedTemplateURLData( |
| return data; |
| } |
| -ScopedVector<TemplateURLData> GetPrepopulatedTemplateURLData( |
| +std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedTemplateURLData( |
| PrefService* prefs) { |
| - ScopedVector<TemplateURLData> t_urls; |
| + std::vector<std::unique_ptr<TemplateURLData>> t_urls; |
| if (!prefs) |
| return t_urls; |
| @@ -1069,12 +1069,12 @@ ScopedVector<TemplateURLData> GetPrepopulatedTemplateURLData( |
| engine->GetList("alternate_urls", &alternate_urls); |
| engine->GetString("search_terms_replacement_key", |
| &search_terms_replacement_key); |
| - t_urls.push_back(MakePrepopulatedTemplateURLData(name, keyword, |
| - search_url, suggest_url, instant_url, image_url, new_tab_url, |
| - contextual_search_url, search_url_post_params, |
| + t_urls.push_back(MakePrepopulatedTemplateURLData( |
| + name, keyword, search_url, suggest_url, instant_url, image_url, |
| + new_tab_url, contextual_search_url, search_url_post_params, |
| suggest_url_post_params, instant_url_post_params, |
| image_url_post_params, favicon_url, encoding, *alternate_urls, |
| - search_terms_replacement_key, id).release()); |
| + search_terms_replacement_key, id)); |
| } |
| } |
| return t_urls; |
| @@ -1104,13 +1104,14 @@ int GetDataVersion(PrefService* prefs) { |
| kCurrentDataVersion; |
| } |
| -ScopedVector<TemplateURLData> GetPrepopulatedEngines( |
| +std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedEngines( |
| PrefService* prefs, |
| size_t* default_search_provider_index) { |
| // If there is a set of search engines in the preferences file, it overrides |
| // the built-in set. |
| *default_search_provider_index = 0; |
| - ScopedVector<TemplateURLData> t_urls = GetPrepopulatedTemplateURLData(prefs); |
| + std::vector<std::unique_ptr<TemplateURLData>> t_urls = |
| + GetPrepopulatedTemplateURLData(prefs); |
| if (!t_urls.empty()) |
| return t_urls; |
| @@ -1118,8 +1119,7 @@ ScopedVector<TemplateURLData> GetPrepopulatedEngines( |
| size_t num_engines; |
| GetPrepopulationSetFromCountryID(prefs, &engines, &num_engines); |
| for (size_t i = 0; i != num_engines; ++i) { |
| - t_urls.push_back( |
| - MakeTemplateURLDataFromPrepopulatedEngine(*engines[i]).release()); |
| + t_urls.push_back(MakeTemplateURLDataFromPrepopulatedEngine(*engines[i])); |
| } |
| return t_urls; |
| } |
| @@ -1157,17 +1157,16 @@ void ClearPrepopulatedEnginesInPrefs(PrefService* prefs) { |
| std::unique_ptr<TemplateURLData> GetPrepopulatedDefaultSearch( |
| PrefService* prefs) { |
| - std::unique_ptr<TemplateURLData> default_search_provider; |
| size_t default_search_index; |
| // This could be more efficient. We are loading all the URLs to only keep |
| // the first one. |
| - ScopedVector<TemplateURLData> loaded_urls = |
| + std::vector<std::unique_ptr<TemplateURLData>> loaded_urls = |
| GetPrepopulatedEngines(prefs, &default_search_index); |
| - if (default_search_index < loaded_urls.size()) { |
| - default_search_provider.reset(loaded_urls[default_search_index]); |
| - loaded_urls.weak_erase(loaded_urls.begin() + default_search_index); |
| - } |
| - return default_search_provider; |
| + |
| + if (default_search_index < loaded_urls.size()) |
| + return std::move(loaded_urls[default_search_index]); |
|
Peter Kasting
2016/09/01 23:17:32
Nit: Maybe
return (default_search_index < loade
Avi (use Gerrit)
2016/09/01 23:26:43
Done.
|
| + |
| + return std::unique_ptr<TemplateURLData>(); |
|
Peter Kasting
2016/09/01 23:17:32
Nit: return nullptr?
Avi (use Gerrit)
2016/09/01 23:26:43
Acknowledged.
|
| } |
| SearchEngineType GetEngineType(const GURL& url) { |