summaryrefslogtreecommitdiffstats
path: root/gtest/include/gtest/internal/gtest-filepath.h
diff options
context:
space:
mode:
Diffstat (limited to 'gtest/include/gtest/internal/gtest-filepath.h')
-rw-r--r--gtest/include/gtest/internal/gtest-filepath.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/gtest/include/gtest/internal/gtest-filepath.h b/gtest/include/gtest/internal/gtest-filepath.h
index 1b2f586..4b76d79 100644
--- a/gtest/include/gtest/internal/gtest-filepath.h
+++ b/gtest/include/gtest/internal/gtest-filepath.h
@@ -56,7 +56,7 @@ namespace internal {
// Names are NOT checked for syntax correctness -- no checking for illegal
// characters, malformed paths, etc.
-class FilePath {
+class GTEST_API_ FilePath {
public:
FilePath() : pathname_("") { }
FilePath(const FilePath& rhs) : pathname_(rhs.pathname_) { }
@@ -189,9 +189,18 @@ class FilePath {
// particular, RemoveTrailingPathSeparator() only removes one separator, and
// it is called in CreateDirectoriesRecursively() assuming that it will change
// a pathname from directory syntax (trailing separator) to filename syntax.
+ //
+ // On Windows this method also replaces the alternate path separator '/' with
+ // the primary path separator '\\', so that for example "bar\\/\\foo" becomes
+ // "bar\\foo".
void Normalize();
+ // Returns a pointer to the last occurence of a valid path separator in
+ // the FilePath. On Windows, for example, both '/' and '\' are valid path
+ // separators. Returns NULL if no path separator was found.
+ const char* FindLastPathSeparator() const;
+
String pathname_;
}; // class FilePath