Lines Matching full:path_
175 FilePath::FilePath(const FilePath& that) : path_(that.path_) {
179 path.CopyToString(&path_);
180 StringType::size_type nul_pos = path_.find(kStringTerminator);
182 path_.erase(nul_pos, StringType::npos);
189 path_ = that.path_;
195 return EqualDriveLetterCaseInsensitive(this->path_, that.path_);
197 return path_ == that.path_;
203 return !EqualDriveLetterCaseInsensitive(this->path_, that.path_);
205 return path_ != that.path_;
308 FilePath new_path(path_);
315 StringType::size_type letter = FindDriveLetter(new_path.path_);
318 new_path.path_.find_last_of(kSeparators, StringType::npos,
321 // path_ is in the current directory.
322 new_path.path_.resize(letter + 1);
324 // path_ is in the root directory.
325 new_path.path_.resize(letter + 2);
327 IsSeparator(new_path.path_[letter + 1])) {
328 // path_ is in "//" (possibly with a drive letter); leave the double
330 new_path.path_.resize(letter + 3);
332 // path_ is somewhere else, trim the basename.
333 new_path.path_.resize(last_separator);
337 if (!new_path.path_.length())
338 new_path.path_ = kCurrentDirectory;
344 FilePath new_path(path_);
348 StringType::size_type letter = FindDriveLetter(new_path.path_);
350 new_path.path_.erase(0, letter + 1);
356 new_path.path_.find_last_of(kSeparators, StringType::npos,
359 last_separator < new_path.path_.length() - 1) {
360 new_path.path_.erase(0, last_separator + 1);
368 const StringType::size_type dot = ExtensionSeparatorPosition(base.path_);
372 return base.path_.substr(dot, StringType::npos);
377 const StringType::size_type dot = FinalExtensionSeparatorPosition(base.path_);
381 return base.path_.substr(dot, StringType::npos);
388 const StringType::size_type dot = ExtensionSeparatorPosition(path_);
392 return FilePath(path_.substr(0, dot));
399 const StringType::size_type dot = FinalExtensionSeparatorPosition(path_);
403 return FilePath(path_.substr(0, dot));
408 return FilePath(path_);
439 StringType str = path_;
488 if (path_.compare(kCurrentDirectory) == 0) {
499 FilePath new_path(path_);
505 if (appended.length() > 0 && new_path.path_.length() > 0) {
508 if (!IsSeparator(new_path.path_[new_path.path_.length() - 1])) {
510 if (FindDriveLetter(new_path.path_) + 1 != new_path.path_.length()) {
511 new_path.path_.append(1, kSeparators[0]);
516 appended.AppendToString(&new_path.path_);
534 return IsPathAbsolute(path_);
540 return IsSeparator(path_[path_.size() - 1]);
544 if (EndsWithSeparator() || path_.empty())
548 path_str.reserve(path_.length() + 1); // Only allocate string once.
550 path_str = path_;
556 FilePath new_path(path_);
587 return WideToUTF16(SysNativeMBToWide(path_));
591 if (base::IsStringASCII(path_))
592 return path_;
632 return path_;
636 if (base::IsStringASCII(path_))
637 return UTF16ToASCII(path_);
662 pickle->WriteString16(path_);
664 pickle->WriteString(path_);
670 if (!iter->ReadString16(&path_))
673 if (!iter->ReadString(&path_))
677 if (path_.find(kStringTerminator) != StringType::npos)
1282 StringType::size_type start = FindDriveLetter(path_) + 2;
1285 for (StringType::size_type pos = path_.length();
1286 pos > start && IsSeparator(path_[pos - 1]);
1291 !IsSeparator(path_[start - 1])) {
1292 path_.resize(pos - 1);
1306 StringType copy = path_;
1318 return StartsWith(path_, "content://", base::CompareCase::INSENSITIVE_ASCII);