diff --git a/SystemTools.cxx b/SystemTools.cxx index eb1aadf0c7699abc1d98699b1b02f5e48fc0c11c..50626e5adcda9affd058c4ba140805043001bd6f 100644 --- a/SystemTools.cxx +++ b/SystemTools.cxx @@ -1367,14 +1367,14 @@ kwsys_stl::string SystemTools::ConvertToUnixOutputPath(const char* path) ret.erase(pos, 1); } // now escape spaces if there is a space in the path - if(ret.find(" ") != kwsys_stl::string::npos) + if(ret.find_first_of(" ()") != kwsys_stl::string::npos) { kwsys_stl::string result = ""; char lastch = 1; for(const char* ch = ret.c_str(); *ch != '\0'; ++ch) { // if it is already escaped then don't try to escape it again - if(*ch == ' ' && lastch != '\\') + if((*ch == ' ' || *ch == '(' || *ch == ')') && lastch != '\\') { result += '\\'; }