diff options
Diffstat (limited to 'Source/cmFindBase.cxx')
-rw-r--r-- | Source/cmFindBase.cxx | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx index f5f1430..8b54a91 100644 --- a/Source/cmFindBase.cxx +++ b/Source/cmFindBase.cxx @@ -495,7 +495,15 @@ void cmFindBase::ExpandRegistryAndCleanPath(std::vector<std::string>& paths) this->SearchPathSuffixes.begin(); j != this->SearchPathSuffixes.end(); ++j) { - std::string p = *i + std::string("/") + *j; + // if *i is only / then do not add a // + // this will get incorrectly considered a network + // path on windows and cause huge delays. + std::string p = *i; + if(p.size() && p[p.size()-1] != '/') + { + p += std::string("/"); + } + p += *j; // add to all paths because the search path may be modified // later with lib being replaced for lib64 which may exist paths.push_back(p); |