diff --git a/Source/cmAddTestCommand.cxx b/Source/cmAddTestCommand.cxx index 11ca9e7cc..72a6e9325 100644 --- a/Source/cmAddTestCommand.cxx +++ b/Source/cmAddTestCommand.cxx @@ -74,7 +74,8 @@ bool cmAddTestCommand::HandleNameMode(std::vector const& args) { std::string name; std::vector configurations; - std::string working_directory; + std::string working_directory = this->Makefile->GetCurrentOutputDirectory(); + bool working_directory_set = false; std::vector command; // Read the arguments. @@ -108,12 +109,13 @@ bool cmAddTestCommand::HandleNameMode(std::vector const& args) } else if(args[i] == "WORKING_DIRECTORY") { - if(!working_directory.empty()) + if(working_directory_set) { this->SetError(" may be given at most one WORKING_DIRECTORY."); return false; } doing = DoingWorkingDirectory; + working_directory_set = true; } else if(doing == DoingName) {