summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authortkent@chromium.org <tkent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-15 05:00:25 +0000
committertkent@chromium.org <tkent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-15 05:00:25 +0000
commit2c8088a4452c2c204237ba9f2f3706e7eeaaf35b (patch)
treecc21ba5595d16b4b441206240af0606fe7fffb18 /base
parent1c8a50abea168e3ff3a3346387ab04936c4a3180 (diff)
downloadchromium_src-2c8088a4452c2c204237ba9f2f3706e7eeaaf35b.zip
chromium_src-2c8088a4452c2c204237ba9f2f3706e7eeaaf35b.tar.gz
chromium_src-2c8088a4452c2c204237ba9f2f3706e7eeaaf35b.tar.bz2
Remove file_util::TrimTrailingSeparators(), which is deprecated and
doesn't work well for Windows root drives. BUG=24722 TEST=existing tests are enough. Review URL: http://codereview.chromium.org/271086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29093 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r--base/file_util.cc5
-rw-r--r--base/file_util.h5
-rw-r--r--base/file_util_posix.cc6
-rw-r--r--base/file_util_unittest.cc2
-rw-r--r--base/file_util_win.cc6
5 files changed, 6 insertions, 18 deletions
diff --git a/base/file_util.cc b/base/file_util.cc
index d3a989b5..9976d88 100644
--- a/base/file_util.cc
+++ b/base/file_util.cc
@@ -47,11 +47,6 @@ bool EnsureEndsWithSeparator(FilePath* path) {
return true;
}
-void TrimTrailingSeparator(std::wstring* dir) {
- while (dir->length() > 1 && EndsWithSeparator(dir))
- dir->resize(dir->length() - 1);
-}
-
FilePath::StringType GetFileExtensionFromPath(const FilePath& path) {
FilePath::StringType file_name = path.BaseName().value();
const FilePath::StringType::size_type last_dot =
diff --git a/base/file_util.h b/base/file_util.h
index 37634b9..93fdd4e 100644
--- a/base/file_util.h
+++ b/base/file_util.h
@@ -47,11 +47,6 @@ bool EndsWithSeparator(const std::wstring& path);
// exists. Returns true if |path| is an existing directory, false otherwise.
bool EnsureEndsWithSeparator(FilePath* path);
-// Modifies a string by trimming all trailing separators from the end.
-// Deprecated. FilePath does this automatically, and if it's constructed from a
-// path with a trailing separator, StripTrailingSeparators() may be used.
-void TrimTrailingSeparator(std::wstring* dir);
-
// Strips the topmost directory from the end of 'dir'. Assumes 'dir' does not
// refer to a file.
// If 'dir' is a root directory, return without change.
diff --git a/base/file_util_posix.cc b/base/file_util_posix.cc
index f011580..6c5b86a 100644
--- a/base/file_util_posix.cc
+++ b/base/file_util_posix.cc
@@ -61,9 +61,9 @@ static const char* kTempFileName = "org.chromium.XXXXXX";
std::wstring GetDirectoryFromPath(const std::wstring& path) {
if (EndsWithSeparator(path)) {
- std::wstring dir = path;
- TrimTrailingSeparator(&dir);
- return dir;
+ return FilePath::FromWStringHack(path)
+ .StripTrailingSeparators()
+ .ToWStringHack();
} else {
char full_path[PATH_MAX];
base::strlcpy(full_path, WideToUTF8(path).c_str(), arraysize(full_path));
diff --git a/base/file_util_unittest.cc b/base/file_util_unittest.cc
index cde98a0..40a4163 100644
--- a/base/file_util_unittest.cc
+++ b/base/file_util_unittest.cc
@@ -297,7 +297,7 @@ static const struct dir_case {
{L"C:\\WINDOWS\\system32\\\\", L"C:\\WINDOWS\\system32"},
{L"C:\\WINDOWS\\system32", L"C:\\WINDOWS"},
{L"C:\\WINDOWS\\system32.\\", L"C:\\WINDOWS\\system32."},
- {L"C:\\", L"C:"},
+ {L"C:\\", L"C:\\"},
#elif defined(OS_POSIX)
{L"/foo/bar/gdi32.dll", L"/foo/bar"},
{L"/foo/bar/not_exist_thx_1138", L"/foo/bar"},
diff --git a/base/file_util_win.cc b/base/file_util_win.cc
index 2d4a694..d6edc6f 100644
--- a/base/file_util_win.cc
+++ b/base/file_util_win.cc
@@ -28,8 +28,7 @@ std::wstring GetDirectoryFromPath(const std::wstring& path) {
std::wstring::size_type length =
file_ptr ? file_ptr - path_buffer : path.length();
std::wstring directory(path, 0, length);
- TrimTrailingSeparator(&directory);
- return directory;
+ return FilePath(directory).StripTrailingSeparators().value();
}
bool AbsolutePath(FilePath* path) {
@@ -651,8 +650,7 @@ bool GetCurrentDirectory(FilePath* dir) {
// trailing slash. We duplicate this here, but it shouldn't be necessary
// when everyone is using the appropriate FilePath APIs.
std::wstring dir_str(system_buffer);
- file_util::TrimTrailingSeparator(&dir_str);
- *dir = FilePath(dir_str);
+ *dir = FilePath(dir_str).StripTrailingSeparators();
return true;
}