| Index: net/ftp/ftp_directory_listing_parser_ls.cc
|
| diff --git a/net/ftp/ftp_directory_listing_parser_ls.cc b/net/ftp/ftp_directory_listing_parser_ls.cc
|
| index 7fb92073236d2c6a9c64aeeb3fcf2dae50f02f59..caca122e20837163e0672350a6deb1bd9de3fa85 100644
|
| --- a/net/ftp/ftp_directory_listing_parser_ls.cc
|
| +++ b/net/ftp/ftp_directory_listing_parser_ls.cc
|
| @@ -24,8 +24,9 @@ bool TwoColumnDateListingToTime(const base::string16& date,
|
| base::Time::Exploded time_exploded = { 0 };
|
|
|
| // Date should be in format YYYY-MM-DD.
|
| - std::vector<base::string16> date_parts;
|
| - base::SplitString(date, '-', &date_parts);
|
| + std::vector<base::string16> date_parts =
|
| + base::SplitString(date, base::ASCIIToUTF16("-"), base::TRIM_WHITESPACE,
|
| + base::SPLIT_WANT_ALL);
|
| if (date_parts.size() != 3)
|
| return false;
|
| if (!base::StringToInt(date_parts[0], &time_exploded.year))
|
| @@ -39,8 +40,9 @@ bool TwoColumnDateListingToTime(const base::string16& date,
|
| if (time.length() != 5)
|
| return false;
|
|
|
| - std::vector<base::string16> time_parts;
|
| - base::SplitString(time, ':', &time_parts);
|
| + std::vector<base::string16> time_parts =
|
| + base::SplitString(time, base::ASCIIToUTF16(":"), base::TRIM_WHITESPACE,
|
| + base::SPLIT_WANT_ALL);
|
| if (time_parts.size() != 2)
|
| return false;
|
| if (!base::StringToInt(time_parts[0], &time_exploded.hour))
|
| @@ -128,8 +130,9 @@ bool ParseFtpDirectoryListingLs(
|
| if (lines[i].empty())
|
| continue;
|
|
|
| - std::vector<base::string16> columns;
|
| - base::SplitString(base::CollapseWhitespace(lines[i], false), ' ', &columns);
|
| + std::vector<base::string16> columns = base::SplitString(
|
| + base::CollapseWhitespace(lines[i], false), base::ASCIIToUTF16(" "),
|
| + base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
|
|
|
| // Some FTP servers put a "total n" line at the beginning of the listing
|
| // (n is an integer). Allow such a line, but only once, and only if it's
|
|
|