Support/PathV2: Fix make_absolute() to match is_absolute() and not expect to

find root names on Unix.
 - This fixes make_absolute to not basically always call current_path() on
   Unix systems.
 - I think the API probably needs cleanup in this area, but I'll let Michael
   handle that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151681 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Daniel Dunbar 2012-02-29 00:20:37 +00:00
parent b6f0625de2
commit d1d721660e

View File

@ -600,8 +600,12 @@ namespace fs {
error_code make_absolute(SmallVectorImpl<char> &path) {
StringRef p(path.data(), path.size());
bool rootName = path::has_root_name(p),
rootDirectory = path::has_root_directory(p);
bool rootDirectory = path::has_root_directory(p),
#ifdef LLVM_ON_WIN32
rootName = has_root_name(p);
#else
rootName = true;
#endif
// Already absolute.
if (rootName && rootDirectory)