diff --git a/Source/CTest/cmCTestUpdateHandler.cxx b/Source/CTest/cmCTestUpdateHandler.cxx
index ffa9debc9..2a29920ff 100644
--- a/Source/CTest/cmCTestUpdateHandler.cxx
+++ b/Source/CTest/cmCTestUpdateHandler.cxx
@@ -204,6 +204,7 @@ int cmCTestUpdateHandler::ProcessHandler()
int count = 0;
int updateType = e_CVS;
std::string::size_type cc, kk;
+ bool updateProducedError = false;
// Get source dir
@@ -390,6 +391,10 @@ int cmCTestUpdateHandler::ProcessHandler()
ofs << goutput << std::endl;;
}
}
+ if ( !res || retVal )
+ {
+ updateProducedError = true;
+ }
os << "\n"
<< "GetTestModelString() << "" << std::endl;
os << "\t" << start_time << "\n"
<< "\t" << m_CTest->MakeXMLSafe(command)
- << "\n"
- << "\t";
- if ( !res || retVal )
- {
- os << "Update error: ";
- os << m_CTest->MakeXMLSafe(goutput);
- std::cerr << "Update with command: " << command << " failed" << std::endl;
- }
- os << "" << std::endl;
+ << "\n";
// Even though it failed, we may have some useful information. Try to continue...
std::vector lines;
@@ -806,8 +803,21 @@ int cmCTestUpdateHandler::ProcessHandler()
os << "\t" << end_time << "\n"
<< "" <<
static_cast((cmSystemTools::GetTime() - elapsed_time_start)/6)/10.0
- << ""
- << "" << std::endl;
+ << "\n"
+ << "\t";
+ if ( num_modified > 0 || num_conflicting > 0 )
+ {
+ os << "Update error: There are modified or conflicting files in the repository";
+ std::cerr << " There are modified or conflicting files in the repository" << std::endl;
+ }
+ if ( !res || retVal )
+ {
+ os << "Update error: ";
+ os << m_CTest->MakeXMLSafe(goutput);
+ std::cerr << " Update with command: " << command << " failed" << std::endl;
+ }
+ os << "" << std::endl;
+ os << "" << std::endl;
if ( ofs )
{