Index: chrome/browser/file_select_helper.cc |
diff --git a/chrome/browser/file_select_helper.cc b/chrome/browser/file_select_helper.cc |
index 9ae5d579ec8e86b851f5b46e4e56eefd1fe009fe..bc0c13b682761f85bdbac38c454158fc7959f0eb 100644 |
--- a/chrome/browser/file_select_helper.cc |
+++ b/chrome/browser/file_select_helper.cc |
@@ -409,6 +409,14 @@ void FileSelectHelper::RunFileChooserOnUIThread( |
gfx::NativeWindow owning_window = |
platform_util::GetTopLevel(render_view_host_->GetView()->GetNativeView()); |
+#if defined(OS_ANDROID) |
+ // Android needs the original MIME types and an additional capture value. |
+ std::vector<string16> accept_types(params.accept_types); |
+ // We append the capture value to the end of the accept_types vector. This |
+ // allows to pass MIME types and the capture value to the SelectFile method. |
+ accept_types.push_back(params.capture); |
+#endif |
+ |
select_file_dialog_->SelectFile( |
dialog_type_, |
params.title, |
@@ -418,7 +426,7 @@ void FileSelectHelper::RunFileChooserOnUIThread( |
FILE_PATH_LITERAL(""), |
owning_window, |
#if defined(OS_ANDROID) |
- const_cast<content::FileChooserParams*>(¶ms)); |
+ &accept_types); |
#else |
NULL); |
#endif |