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 98963bbfd51352455d40bdfc7acdde3596359612..16e31fbd26e9ebd46d9e34c1ac33ddbee9b6b9e3 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::OnPreferences, |
+ base::Unretained(this))); |
+} |
+ |
+void MediaGalleriesDialogController::OnPreferences( |
+ MediaGalleriesPreferences* preferences) { |
+ preferences_ = preferences; |
InitializePermissions(); |
dialog_.reset(MediaGalleriesDialog::Create(this)); |