[Cmake-commits] [cmake-commits] king committed cmSystemTools.cxx 1.392 1.393
cmake-commits at cmake.org
cmake-commits at cmake.org
Tue Apr 21 11:37:13 EDT 2009
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv9373/Source
Modified Files:
cmSystemTools.cxx
Log Message:
BUG: Avoid infinite loop at directory tree root
The system tools GetParentDirectory method no longer removes the root
path component. This fixes cmSystemTools::FileExistsInParentDirectories
to not infinitely loop at when GetParentDirectory stops at the root.
Index: cmSystemTools.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmSystemTools.cxx,v
retrieving revision 1.392
retrieving revision 1.393
diff -C 2 -d -r1.392 -r1.393
*** cmSystemTools.cxx 21 Apr 2009 15:36:58 -0000 1.392
--- cmSystemTools.cxx 21 Apr 2009 15:37:09 -0000 1.393
***************
*** 1105,1109 ****
std::string dir = directory;
SystemTools::ConvertToUnixSlashes(dir);
! while ( !dir.empty() )
{
std::string path = dir + "/" + file;
--- 1105,1110 ----
std::string dir = directory;
SystemTools::ConvertToUnixSlashes(dir);
! std::string prevDir;
! while(dir != prevDir)
{
std::string path = dir + "/" + file;
***************
*** 1116,1119 ****
--- 1117,1121 ----
break;
}
+ prevDir = dir;
dir = SystemTools::GetParentDirectory(dir.c_str());
}
More information about the Cmake-commits
mailing list