#include <utility>
#include "base/bind.h"
-#include "base/file_util.h"
#include "base/files/file_enumerator.h"
+#include "base/files/file_util.h"
#include "base/strings/string_split.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_list.h"
#include "chrome/browser/ui/chrome_select_file_policy.h"
+#include "chrome/grit/generated_resources.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/notification_details.h"
#include "content/public/browser/notification_source.h"
#include "content/public/browser/render_widget_host_view.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/file_chooser_params.h"
-#include "grit/generated_resources.h"
#include "net/base/mime_util.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/shell_dialogs/selected_file_info.h"
const net::DirectoryLister::DirectoryListerData& data) {
ActiveDirectoryEnumeration* entry = directory_enumerations_[id];
- // Directory upload returns directories via a "." file, so that
- // empty directories are included. This util call just checks
- // the flags in the structure; there's no file I/O going on.
+ // Directory upload only cares about files.
if (data.info.IsDirectory())
- entry->results_.push_back(data.path.Append(FILE_PATH_LITERAL(".")));
- else
- entry->results_.push_back(data.path);
+ return;
+
+ entry->results_.push_back(data.path);
}
void FileSelectHelper::OnListDone(int id, int error) {
int valid_type_count = 0;
int description_id = 0;
for (size_t i = 0; i < accept_types.size(); ++i) {
- std::string ascii_type = UTF16ToASCII(accept_types[i]);
+ std::string ascii_type = base::UTF16ToASCII(accept_types[i]);
if (!IsAcceptTypeValid(ascii_type))
continue;
select_file_dialog_ = ui::SelectFileDialog::Create(
this, new ChromeSelectFilePolicy(web_contents_));
+ if (!select_file_dialog_.get())
+ return;
dialog_mode_ = params.mode;
switch (params.mode) {
// of an extension or a "/" in the case of a MIME type).
std::string unused;
if (accept_type.length() <= 1 ||
- StringToLowerASCII(accept_type) != accept_type ||
- TrimWhitespaceASCII(accept_type, TRIM_ALL, &unused) != TRIM_NONE) {
+ base::StringToLowerASCII(accept_type) != accept_type ||
+ base::TrimWhitespaceASCII(accept_type, base::TRIM_ALL, &unused) !=
+ base::TRIM_NONE) {
return false;
}
return true;