Index: chrome/browser/ui/intents/web_intent_picker_model.cc |
diff --git a/chrome/browser/ui/intents/web_intent_picker_model.cc b/chrome/browser/ui/intents/web_intent_picker_model.cc |
index 60148278be7d99f1a3a4d8ef5d1583344628437f..16b0fb298af7deac835e8fbb68323dd6adab91d4 100644 |
--- a/chrome/browser/ui/intents/web_intent_picker_model.cc |
+++ b/chrome/browser/ui/intents/web_intent_picker_model.cc |
@@ -91,12 +91,18 @@ size_t WebIntentPickerModel::GetInstalledServiceCount() const { |
return installed_services_.size(); |
} |
-void WebIntentPickerModel::UpdateFaviconAt(size_t index, |
- const gfx::Image& image) { |
- DCHECK_LT(index, installed_services_.size()); |
- installed_services_[index]->favicon = image; |
- if (observer_) |
- observer_->OnFaviconChanged(this, index); |
+void WebIntentPickerModel::UpdateFaviconForServiceWithURL( |
+ const GURL& url, const gfx::Image& image) { |
+ for (size_t i = 0; i < installed_services_.size(); ++i) { |
+ InstalledService* service = installed_services_[i]; |
+ if (service->url == url) { |
+ service->favicon = image; |
+ if (observer_) |
+ observer_->OnFaviconChanged(this, i); |
+ return; |
+ } |
+ } |
+ NOTREACHED(); // Calling this with an invalid URL is not allowed. |
} |
void WebIntentPickerModel::AddSuggestedExtensions( |