summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2010-08-18 14:26:05 (GMT)
committerBrad King <brad.king@kitware.com>2010-08-18 14:26:05 (GMT)
commitcb9ea2647f66326dde34a15fde4d7d93a5c766ac (patch)
treead4a77d77ff103a57c39fc550e0ccd26d97029bd
parent5383657357b35481b5ff676736e36927339bea1c (diff)
downloadCMake-cb9ea2647f66326dde34a15fde4d7d93a5c766ac.zip
CMake-cb9ea2647f66326dde34a15fde4d7d93a5c766ac.tar.gz
CMake-cb9ea2647f66326dde34a15fde4d7d93a5c766ac.tar.bz2
Remove cmSystemTools::EscapeSpaces method
The last remaining call to this method exists only for compatibility. Remove the method and put its implementation inline in place of the last call.
-rw-r--r--Source/cmLocalGenerator.cxx24
-rw-r--r--Source/cmSystemTools.cxx43
-rw-r--r--Source/cmSystemTools.h6
3 files changed, 18 insertions, 55 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index 07c92e5..bac0223 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -2810,17 +2810,29 @@ cmLocalGenerator
std::string cmLocalGenerator::EscapeForShellOldStyle(const char* str)
{
std::string result;
- bool forceOn = cmSystemTools::GetForceUnixPaths();
- if(forceOn && this->WindowsShell)
+#if defined(_WIN32) && !defined(__CYGWIN__)
+ // if there are spaces
+ std::string temp = str;
+ if (temp.find(" ") != std::string::npos &&
+ temp.find("\"")==std::string::npos)
{
- cmSystemTools::SetForceUnixPaths(false);
+ result = "\"";
+ result += str;
+ result += "\"";
+ return result;
}
- result = cmSystemTools::EscapeSpaces(str);
- if(forceOn && this->WindowsShell)
+ return str;
+#else
+ for(const char* ch = str; *ch != '\0'; ++ch)
{
- cmSystemTools::SetForceUnixPaths(true);
+ if(*ch == ' ')
+ {
+ result += '\\';
+ }
+ result += *ch;
}
return result;
+#endif
}
//----------------------------------------------------------------------------
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index 0e0a770..271a662 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -191,49 +191,6 @@ std::string cmSystemTools::EscapeQuotes(const char* str)
return result;
}
-std::string cmSystemTools::EscapeSpaces(const char* str)
-{
-#if defined(_WIN32) && !defined(__CYGWIN__)
- bool useDoubleQ = true;
-#else
- bool useDoubleQ = false;
-#endif
- if(cmSystemTools::s_ForceUnixPaths)
- {
- useDoubleQ = false;
- }
-
- if(useDoubleQ)
- {
- std::string result;
-
- // if there are spaces
- std::string temp = str;
- if (temp.find(" ") != std::string::npos &&
- temp.find("\"")==std::string::npos)
- {
- result = "\"";
- result += str;
- result += "\"";
- return result;
- }
- return str;
- }
- else
- {
- std::string result = "";
- for(const char* ch = str; *ch != '\0'; ++ch)
- {
- if(*ch == ' ')
- {
- result += '\\';
- }
- result += *ch;
- }
- return result;
- }
-}
-
void cmSystemTools::Error(const char* m1, const char* m2,
const char* m3, const char* m4)
{
diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h
index da5da31..6a9d849 100644
--- a/Source/cmSystemTools.h
+++ b/Source/cmSystemTools.h
@@ -46,12 +46,6 @@ public:
static void ExpandRegistryValues(std::string& source,
KeyWOW64 view = KeyWOW64_Default);
- /**
- * Platform independent escape spaces, unix uses backslash,
- * windows double quotes the string.
- */
- static std::string EscapeSpaces(const char* str);
-
///! Escape quotes in a string.
static std::string EscapeQuotes(const char* str);