Index: chrome/browser/ui/intents/web_intent_picker_controller.cc |
diff --git a/chrome/browser/ui/intents/web_intent_picker_controller.cc b/chrome/browser/ui/intents/web_intent_picker_controller.cc |
index f94c1467f5a1ac1141fea9855ca3d44886154191..6d0f4d7b2c5ae5aa7b0bba28ff934d5b18856930 100644 |
--- a/chrome/browser/ui/intents/web_intent_picker_controller.cc |
+++ b/chrome/browser/ui/intents/web_intent_picker_controller.cc |
@@ -497,10 +497,11 @@ void WebIntentPickerController::AddServiceToModel( |
service.disposition); |
pending_async_count_++; |
- FaviconService::Handle handle = favicon_service->GetFaviconForURL( |
+ FaviconService::Handle handle = favicon_service->GetFaviconImageForURL( |
tab_contents_->profile(), |
service.service_url, |
history::FAVICON, |
+ gfx::kFaviconSize, |
&favicon_consumer_, |
base::Bind( |
&WebIntentPickerController::OnFaviconDataAvailable, |
@@ -574,18 +575,12 @@ void WebIntentPickerController::RegistryCallsCompleted() { |
} |
void WebIntentPickerController::OnFaviconDataAvailable( |
- FaviconService::Handle handle, history::FaviconData favicon_data) { |
+ FaviconService::Handle handle, |
+ const history::FaviconImageResult& image_result) { |
size_t index = favicon_consumer_.GetClientDataForCurrentRequest(); |
- if (favicon_data.is_valid()) { |
- SkBitmap icon_bitmap; |
- |
- if (gfx::PNGCodec::Decode(favicon_data.image_data->front(), |
- favicon_data.image_data->size(), |
- &icon_bitmap)) { |
- gfx::Image icon_image(icon_bitmap); |
- picker_model_->UpdateFaviconAt(index, icon_image); |
- return; |
- } |
+ if (!image_result.image.IsEmpty()) { |
+ picker_model_->UpdateFaviconAt(index, image_result.image); |
+ return; |
} |
AsyncOperationFinished(); |