summaryrefslogtreecommitdiff
path: root/Source/CTest/cmCTestBuildHandler.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/CTest/cmCTestBuildHandler.cxx')
-rw-r--r--Source/CTest/cmCTestBuildHandler.cxx21
1 files changed, 19 insertions, 2 deletions
diff --git a/Source/CTest/cmCTestBuildHandler.cxx b/Source/CTest/cmCTestBuildHandler.cxx
index abd8dddb5f..3e1dff9a54 100644
--- a/Source/CTest/cmCTestBuildHandler.cxx
+++ b/Source/CTest/cmCTestBuildHandler.cxx
@@ -534,6 +534,8 @@ void cmCTestBuildHandler::GenerateDartBuildOutput(
break;
}
}
+ if ( !cm->SourceFile.empty() && cm->LineNumber >= 0 )
+ {
if ( cm->SourceFile.size() > 0 )
{
os << "\t\t<SourceFile>" << cm->SourceFile << "</SourceFile>"
@@ -549,6 +551,7 @@ void cmCTestBuildHandler::GenerateDartBuildOutput(
os << "\t\t<SourceLineNumber>" << cm->LineNumber
<< "</SourceLineNumber>" << std::endl;
}
+ }
os << "\t\t<PreContext>" << this->CTest->MakeXMLSafe(cm->PreContext)
<< "</PreContext>\n"
<< "\t\t<PostContext>" << this->CTest->MakeXMLSafe(cm->PostContext);
@@ -891,6 +894,7 @@ int cmCTestBuildHandler::ProcessSingleLine(const char* data)
if ( !this->ErrorQuotaReached )
{
// Errors
+ int wrxCnt = 0;
for ( it = this->ErrorMatchRegex.begin();
it != this->ErrorMatchRegex.end();
++ it )
@@ -898,11 +902,15 @@ int cmCTestBuildHandler::ProcessSingleLine(const char* data)
if ( it->find(data) )
{
errorLine = 1;
- cmCTestLog(this->CTest, DEBUG, " Error Line: " << data << std::endl);
+ cmCTestLog(this->CTest, DEBUG, " Error Line: " << data
+ << " (matches: " << this->CustomWarningMatches[wrxCnt] << ")"
+ << std::endl);
break;
}
+ wrxCnt ++;
}
// Error exceptions
+ wrxCnt = 0;
for ( it = this->ErrorExceptionRegex.begin();
it != this->ErrorExceptionRegex.end();
++ it )
@@ -911,14 +919,17 @@ int cmCTestBuildHandler::ProcessSingleLine(const char* data)
{
errorLine = 0;
cmCTestLog(this->CTest, DEBUG, " Not an error Line: " << data
+ << " (matches: " << this->CustomErrorExceptions[wrxCnt] << ")"
<< std::endl);
break;
}
+ wrxCnt ++;
}
}
if ( !this->WarningQuotaReached )
{
// Warnings
+ int wrxCnt = 0;
for ( it = this->WarningMatchRegex.begin();
it != this->WarningMatchRegex.end();
++ it )
@@ -927,11 +938,15 @@ int cmCTestBuildHandler::ProcessSingleLine(const char* data)
{
warningLine = 1;
cmCTestLog(this->CTest, DEBUG,
- " Warning Line: " << data << std::endl);
+ " Warning Line: " << data
+ << " (matches: " << this->CustomWarningMatches[wrxCnt] << ")"
+ << std::endl);
break;
}
+ wrxCnt ++;
}
+ wrxCnt = 0;
// Warning exceptions
for ( it = this->WarningExceptionRegex.begin();
it != this->WarningExceptionRegex.end();
@@ -941,9 +956,11 @@ int cmCTestBuildHandler::ProcessSingleLine(const char* data)
{
warningLine = 0;
cmCTestLog(this->CTest, DEBUG, " Not a warning Line: " << data
+ << " (matches: " << this->CustomWarningExceptions[wrxCnt] << ")"
<< std::endl);
break;
}
+ wrxCnt ++;
}
}
if ( errorLine )