| Index: net/ftp/ftp_directory_listing_parser_vms.cc
|
| diff --git a/net/ftp/ftp_directory_listing_parser_vms.cc b/net/ftp/ftp_directory_listing_parser_vms.cc
|
| index d05446c179cc3e5c41564b9bf9e6adee352e932e..ac7a464fb8309f29394667ed6dea02ac3ce646f9 100644
|
| --- a/net/ftp/ftp_directory_listing_parser_vms.cc
|
| +++ b/net/ftp/ftp_directory_listing_parser_vms.cc
|
| @@ -25,8 +25,9 @@ bool ParseVmsFilename(const base::string16& raw_filename,
|
| FtpDirectoryListingEntry::Type* type) {
|
| // On VMS, the files and directories are versioned. The version number is
|
| // separated from the file name by a semicolon. Example: ANNOUNCE.TXT;2.
|
| - std::vector<base::string16> listing_parts;
|
| - base::SplitString(raw_filename, ';', &listing_parts);
|
| + std::vector<base::string16> listing_parts =
|
| + base::SplitString(raw_filename, base::ASCIIToUTF16(";"),
|
| + base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
|
| if (listing_parts.size() != 2)
|
| return false;
|
| int version_number;
|
| @@ -39,8 +40,9 @@ bool ParseVmsFilename(const base::string16& raw_filename,
|
| // for directories; it's awkward for non-VMS users. Also, VMS is
|
| // case-insensitive, but generally uses uppercase characters. This may look
|
| // awkward, so we convert them to lower case.
|
| - std::vector<base::string16> filename_parts;
|
| - base::SplitString(listing_parts[0], '.', &filename_parts);
|
| + std::vector<base::string16> filename_parts =
|
| + base::SplitString(listing_parts[0], base::ASCIIToUTF16("."),
|
| + base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
|
| if (filename_parts.size() != 2)
|
| return false;
|
| if (base::EqualsASCII(filename_parts[1], "DIR")) {
|
| @@ -72,8 +74,9 @@ bool ParseVmsFilesize(const base::string16& input, int64* size) {
|
| return true;
|
| }
|
|
|
| - std::vector<base::string16> parts;
|
| - base::SplitString(input, '/', &parts);
|
| + std::vector<base::StringPiece16> parts =
|
| + base::SplitStringPiece(input, base::ASCIIToUTF16("/"),
|
| + base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
|
| if (parts.size() != 2)
|
| return false;
|
|
|
| @@ -115,8 +118,9 @@ bool LooksLikeVmsFileProtectionListing(const base::string16& input) {
|
|
|
| // We expect four parts of the file protection listing: for System, Owner,
|
| // Group, and World.
|
| - std::vector<base::string16> parts;
|
| - base::SplitString(input.substr(1, input.length() - 2), ',', &parts);
|
| + std::vector<base::string16> parts = base::SplitString(
|
| + base::StringPiece16(input).substr(1, input.length() - 2),
|
| + base::ASCIIToUTF16(","), base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
|
| if (parts.size() != 4)
|
| return false;
|
|
|
| @@ -156,13 +160,14 @@ bool VmsDateListingToTime(const std::vector<base::string16>& columns,
|
| base::Time::Exploded time_exploded = { 0 };
|
|
|
| // Date should be in format DD-MMM-YYYY.
|
| - std::vector<base::string16> date_parts;
|
| - base::SplitString(columns[2], '-', &date_parts);
|
| + std::vector<base::StringPiece16> date_parts =
|
| + base::SplitStringPiece(columns[2], base::ASCIIToUTF16("-"),
|
| + base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
|
| if (date_parts.size() != 3)
|
| return false;
|
| if (!base::StringToInt(date_parts[0], &time_exploded.day_of_month))
|
| return false;
|
| - if (!FtpUtil::AbbreviatedMonthToNumber(date_parts[1],
|
| + if (!FtpUtil::AbbreviatedMonthToNumber(date_parts[1].as_string(),
|
| &time_exploded.month))
|
| return false;
|
| if (!base::StringToInt(date_parts[2], &time_exploded.year))
|
| @@ -177,8 +182,9 @@ bool VmsDateListingToTime(const std::vector<base::string16>& columns,
|
| time_column = time_column.substr(0, 5);
|
| if (time_column.length() != 5)
|
| return false;
|
| - std::vector<base::string16> time_parts;
|
| - base::SplitString(time_column, ':', &time_parts);
|
| + std::vector<base::StringPiece16> time_parts =
|
| + base::SplitStringPiece(time_column, 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))
|
|
|