KWSys: Do not mangle UNC paths in ConvertToUnixOutputPath (#10206)

This method replaces '//' with '/' to make the paths look nicer.
Originally it correctly skipped a leading '//' in a UNC path as the
comment says.  However, commit "Removed extra variable initializations"
(2005-04-15) accidentally removed the "pos=1" initializer.  It was then
incorrectly restored by commit "Added missing variable initialization"
(2005-04-15) as just "pos=0".  Restore the proper initializer.

The test for this added by commit "better coverage" (2006-07-31)
included incorrect output for a sample UNC-like path.  Fix it.
This commit is contained in:
Brad King 2010-12-14 18:12:28 -05:00
parent 2d1aa4ad06
commit 3a14b6e556
2 changed files with 2 additions and 2 deletions

View File

@ -1640,7 +1640,7 @@ kwsys_stl::string SystemTools::ConvertToUnixOutputPath(const char* path)
kwsys_stl::string ret = path;
// remove // except at the beginning might be a cygwin drive
kwsys_stl::string::size_type pos=0;
kwsys_stl::string::size_type pos=1;
while((pos = ret.find("//", pos)) != kwsys_stl::string::npos)
{
ret.erase(pos, 1);

View File

@ -297,7 +297,7 @@ bool CheckStringOperations()
if (kwsys::SystemTools::ConvertToUnixOutputPath
("//Local Mojo/Hex Power Pack/Iffy Voodoo") !=
"/Local\\ Mojo/Hex\\ Power\\ Pack/Iffy\\ Voodoo")
"//Local\\ Mojo/Hex\\ Power\\ Pack/Iffy\\ Voodoo")
{
kwsys_ios::cerr
<< "Problem with ConvertToUnixOutputPath "