diff --git a/Source/ctest.cxx b/Source/ctest.cxx index 7ff80ba3d..d010be82b 100644 --- a/Source/ctest.cxx +++ b/Source/ctest.cxx @@ -132,6 +132,8 @@ void ctest::ProcessDirectory(int &passed, std::vector &failed) return; } + int firstTest = 1; + std::string name; std::vector args; cmRegularExpression ireg(this->m_IncludeRegExp.c_str()); @@ -154,7 +156,6 @@ void ctest::ProcessDirectory(int &passed, std::vector &failed) nwd += *j; if (cmSystemTools::FileIsDirectory(nwd.c_str())) { - std::cerr << "Changing directory into " << nwd.c_str() << "\n"; cmSystemTools::ChangeDirectory(nwd.c_str()); this->ProcessDirectory(passed, failed); } @@ -181,6 +182,12 @@ void ctest::ProcessDirectory(int &passed, std::vector &failed) { continue; } + if (firstTest) + { + std::string nwd = cmSystemTools::GetCurrentWorkingDirectory(); + std::cerr << "Changing directory into " << nwd.c_str() << "\n"; + firstTest = 0; + } fprintf(stderr,"Testing %-30s ",args[0].c_str()); fflush(stderr); //std::cerr << "Testing " << args[0] << " ... ";