aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/System/Path.h7
-rw-r--r--lib/System/Path.cpp2
-rw-r--r--lib/System/Unix/Path.inc4
-rw-r--r--lib/System/Win32/Path.inc4
4 files changed, 7 insertions, 10 deletions
diff --git a/include/llvm/System/Path.h b/include/llvm/System/Path.h
index 5846fa9253..36b48e7cc6 100644
--- a/include/llvm/System/Path.h
+++ b/include/llvm/System/Path.h
@@ -571,13 +571,6 @@ namespace sys {
/// MemoryBuffer::getFile instead.
static void UnMapFilePages(const char *Base, uint64_t FileSize);
-
- /// @}
- /// @name Internal methods.
- /// @{
- protected:
- std::string getDirnameCharSep(char Sep) const;
-
/// @}
/// @name Data
/// @{
diff --git a/lib/System/Path.cpp b/lib/System/Path.cpp
index 43c36d5e09..e8fd5f2963 100644
--- a/lib/System/Path.cpp
+++ b/lib/System/Path.cpp
@@ -196,7 +196,7 @@ static void getPathList(const char*path, std::vector<Path>& Paths) {
Paths.push_back(tmpPath);
}
-std::string Path::getDirnameCharSep(char Sep) const {
+static std::string getDirnameCharSep(const std::string& path, char Sep) {
if (path.empty())
return ".";
diff --git a/lib/System/Unix/Path.inc b/lib/System/Unix/Path.inc
index fe2e3c6777..aca4b936e8 100644
--- a/lib/System/Unix/Path.inc
+++ b/lib/System/Unix/Path.inc
@@ -277,7 +277,9 @@ Path Path::GetMainExecutable(const char *argv0, void *MainAddr) {
}
-std::string Path::getDirname() const { return getDirnameCharSep('/'); }
+std::string Path::getDirname() const {
+ return getDirnameCharSep(path, '/');
+}
std::string
Path::getBasename() const {
diff --git a/lib/System/Win32/Path.inc b/lib/System/Win32/Path.inc
index 35bae337da..357cb2f27e 100644
--- a/lib/System/Win32/Path.inc
+++ b/lib/System/Win32/Path.inc
@@ -229,7 +229,9 @@ Path::isRootDirectory() const {
return len > 0 && path[len-1] == '/';
}
-std::string Path::getDirname() const { return getDirnameCharSep('\\'); }
+std::string Path::getDirname() const {
+ return getDirnameCharSep(path, '\\');
+}
std::string
Path::getBasename() const {