mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-25 10:18:34 -06:00
BUG: Removing "guess when there is a space in the path" check for chdir command. It is the responsibility of the caller of the command to ensure the arguments are properly quoted on the command line.
This commit is contained in:
@@ -774,27 +774,21 @@ int cmake::CMakeCommand(std::vector<std::string>& args)
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Clock command
|
||||
// Command to change directory and run a program.
|
||||
else if (args[1] == "chdir" && args.size() >= 4)
|
||||
{
|
||||
std::string directory = args[2];
|
||||
unsigned pos = 3;
|
||||
if(!cmSystemTools::FileExists(directory.c_str()))
|
||||
{
|
||||
directory += " ";
|
||||
directory += args[3];
|
||||
if(!cmSystemTools::FileExists(directory.c_str()))
|
||||
{
|
||||
cmSystemTools::Error("Directory does not exist for chdir command (try1): ", args[2].c_str());
|
||||
cmSystemTools::Error("Directory does not exist for chdir command (try2): ", directory.c_str());
|
||||
}
|
||||
pos = 4;
|
||||
cmSystemTools::Error("Directory does not exist for chdir command: ",
|
||||
args[2].c_str());
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
std::string command = "\"";
|
||||
command += args[pos];
|
||||
command += args[3];
|
||||
command += "\"";
|
||||
for (std::string::size_type cc = pos+1; cc < args.size(); cc ++)
|
||||
for (std::string::size_type cc = 4; cc < args.size(); cc ++)
|
||||
{
|
||||
command += " \"";
|
||||
command += args[cc];
|
||||
|
||||
Reference in New Issue
Block a user