[Cmake-commits] [cmake-commits] david.cole committed cmCTestCoverageHandler.cxx 1.53 1.54
cmake-commits at cmake.org
cmake-commits at cmake.org
Thu Jul 31 11:28:47 EDT 2008
Update of /cvsroot/CMake/CMake/Source/CTest
In directory public:/mounts/ram/cvs-serv22704
Modified Files:
cmCTestCoverageHandler.cxx
Log Message:
BUG: Fix issue #4971 - use lower case when comparing file names from gcov output on _WIN32 since sometimes the drive letters have different case.
Index: cmCTestCoverageHandler.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CTest/cmCTestCoverageHandler.cxx,v
retrieving revision 1.53
retrieving revision 1.54
diff -C 2 -d -r1.53 -r1.54
*** cmCTestCoverageHandler.cxx 10 May 2008 15:12:09 -0000 1.53
--- cmCTestCoverageHandler.cxx 31 Jul 2008 15:28:45 -0000 1.54
***************
*** 641,644 ****
--- 641,656 ----
//----------------------------------------------------------------------
+ // Fix for issue #4971 where the case of the drive letter component of
+ // the filenames might be different when analyzing gcov output.
+ //
+ // Compare file names: fnc(fn1) == fnc(fn2) // fnc == file name compare
+ //
+ #ifdef _WIN32
+ #define fnc(s) cmSystemTools::LowerCase(s)
+ #else
+ #define fnc(s) s
+ #endif
+
+ //----------------------------------------------------------------------
int cmCTestCoverageHandler::HandleGCovCoverage(
cmCTestCoverageHandlerContainer* cont)
***************
*** 970,976 ****
{
gcovFile = "";
// Is it in the source dir?
if ( sourceFile.size() > cont->SourceDir.size() &&
! sourceFile.substr(0, cont->SourceDir.size()) == cont->SourceDir &&
sourceFile[cont->SourceDir.size()] == '/' )
{
--- 982,990 ----
{
gcovFile = "";
+
// Is it in the source dir?
if ( sourceFile.size() > cont->SourceDir.size() &&
! (fnc(sourceFile.substr(0, cont->SourceDir.size())) ==
! fnc(cont->SourceDir)) &&
sourceFile[cont->SourceDir.size()] == '/' )
{
***************
*** 982,988 ****
= cmSystemTools::CollapseFullPath(sourceFile.c_str());
}
// Binary dir?
if ( sourceFile.size() > cont->BinaryDir.size() &&
! sourceFile.substr(0, cont->BinaryDir.size()) == cont->BinaryDir &&
sourceFile[cont->BinaryDir.size()] == '/' )
{
--- 996,1004 ----
= cmSystemTools::CollapseFullPath(sourceFile.c_str());
}
+
// Binary dir?
if ( sourceFile.size() > cont->BinaryDir.size() &&
! (fnc(sourceFile.substr(0, cont->BinaryDir.size())) ==
! fnc(cont->BinaryDir)) &&
sourceFile[cont->BinaryDir.size()] == '/' )
{
***************
*** 994,997 ****
--- 1010,1014 ----
= cmSystemTools::CollapseFullPath(sourceFile.c_str());
}
+
if ( actualSourceFile.empty() )
{
More information about the Cmake-commits
mailing list