Index: chrome/browser/media_galleries/media_galleries_dialog_controller.cc |
diff --git a/chrome/browser/media_galleries/media_galleries_dialog_controller.cc b/chrome/browser/media_galleries/media_galleries_dialog_controller.cc |
index ec58a53e216d60efb2f6a8d06baa6ef5d01a3e41..d66d87e35a8f6c31a178f9157d5fe3b5a7cea3ac 100644 |
--- a/chrome/browser/media_galleries/media_galleries_dialog_controller.cc |
+++ b/chrome/browser/media_galleries/media_galleries_dialog_controller.cc |
@@ -64,8 +64,15 @@ MediaGalleriesDialogController::MediaGalleriesDialogController( |
on_finish_(on_finish) { |
MediaFileSystemRegistry* registry = |
g_browser_process->media_file_system_registry(); |
- preferences_ = registry->GetPreferences( |
- Profile::FromBrowserContext(web_contents->GetBrowserContext())); |
+ registry->GetPreferencesAsync( |
+ Profile::FromBrowserContext(web_contents->GetBrowserContext()), |
+ base::Bind(&MediaGalleriesDialogController::Init, |
+ base::Unretained(this))); |
+} |
+ |
+void MediaGalleriesDialogController::Init( |
+ MediaGalleriesPreferences* preferences) { |
+ preferences_ = preferences; |
InitializePermissions(); |
dialog_.reset(MediaGalleriesDialog::Create(this)); |