| OLD | NEW |
| 1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/file_path.h" | 5 #include "base/file_path.h" |
| 6 #include "base/logging.h" | 6 #include "base/logging.h" |
| 7 | 7 |
| 8 // These includes are just for the *Hack functions, and should be removed | 8 // These includes are just for the *Hack functions, and should be removed |
| 9 // when those functions are removed. | 9 // when those functions are removed. |
| 10 #include "base/string_piece.h" | 10 #include "base/string_piece.h" |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 76 } | 76 } |
| 77 // Look for a pair of leading separators. | 77 // Look for a pair of leading separators. |
| 78 return path.length() > 1 && | 78 return path.length() > 1 && |
| 79 FilePath::IsSeparator(path[0]) && FilePath::IsSeparator(path[1]); | 79 FilePath::IsSeparator(path[0]) && FilePath::IsSeparator(path[1]); |
| 80 #else // FILE_PATH_USES_DRIVE_LETTERS | 80 #else // FILE_PATH_USES_DRIVE_LETTERS |
| 81 // Look for a separator in the first position. | 81 // Look for a separator in the first position. |
| 82 return path.length() > 0 && FilePath::IsSeparator(path[0]); | 82 return path.length() > 0 && FilePath::IsSeparator(path[0]); |
| 83 #endif // FILE_PATH_USES_DRIVE_LETTERS | 83 #endif // FILE_PATH_USES_DRIVE_LETTERS |
| 84 } | 84 } |
| 85 | 85 |
| 86 bool AreAllSeparators(FilePath::StringType input) { | 86 bool AreAllSeparators(const FilePath::StringType& input) { |
| 87 for (FilePath::StringType::const_iterator it = input.begin(); | 87 for (FilePath::StringType::const_iterator it = input.begin(); |
| 88 it != input.end(); ++it) { | 88 it != input.end(); ++it) { |
| 89 if (!FilePath::IsSeparator(*it)) | 89 if (!FilePath::IsSeparator(*it)) |
| 90 return false; | 90 return false; |
| 91 } | 91 } |
| 92 | 92 |
| 93 return true; | 93 return true; |
| 94 } | 94 } |
| 95 | 95 |
| 96 } // namespace | 96 } // namespace |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 445 --pos) { | 445 --pos) { |
| 446 // If the string only has two separators and they're at the beginning, | 446 // If the string only has two separators and they're at the beginning, |
| 447 // don't strip them, unless the string began with more than two separators. | 447 // don't strip them, unless the string began with more than two separators. |
| 448 if (pos != start + 1 || last_stripped == start + 2 || | 448 if (pos != start + 1 || last_stripped == start + 2 || |
| 449 !IsSeparator(path_[start - 1])) { | 449 !IsSeparator(path_[start - 1])) { |
| 450 path_.resize(pos - 1); | 450 path_.resize(pos - 1); |
| 451 last_stripped = pos; | 451 last_stripped = pos; |
| 452 } | 452 } |
| 453 } | 453 } |
| 454 } | 454 } |
| OLD | NEW |