[Cmake-commits] [cmake-commits] king committed cmCTestUpdateHandler.cxx 1.45 1.46

cmake-commits at cmake.org cmake-commits at cmake.org
Sat Oct 18 12:07:17 EDT 2008


Update of /cvsroot/CMake/CMake/Source/CTest
In directory public:/mounts/ram/cvs-serv19392/Source/CTest

Modified Files:
	cmCTestUpdateHandler.cxx 
Log Message:
BUG: Fix recognition of files deleted from CVS

The output of "cvs update" contains a line such as one of

  cvs update: `foo.txt' is no longer in the repository
  cvs update: foo.txt is no longer in the repository
  cvs update: warning: foo.txt is not (any longer) pertinent

when file "foo.txt" has been removed in the version to which the update
occurs.  Previously only the first case would be recognized.  This fixes
the regular expression to match all these cases.


Index: cmCTestUpdateHandler.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CTest/cmCTestUpdateHandler.cxx,v
retrieving revision 1.45
retrieving revision 1.46
diff -C 2 -d -r1.45 -r1.46
*** cmCTestUpdateHandler.cxx	10 Oct 2008 13:36:16 -0000	1.45
--- cmCTestUpdateHandler.cxx	18 Oct 2008 16:07:15 -0000	1.46
***************
*** 654,658 ****
  
    cmsys::RegularExpression file_removed_line(
!     "cvs update: `(.*)' is no longer in the repository");
    cmsys::RegularExpression file_update_line("([A-Z])  *(.*)");
    std::string current_path = "<no-path>";
--- 654,660 ----
  
    cmsys::RegularExpression file_removed_line(
!     "cvs update: `?([^']*)'? is no longer in the repository");
!   cmsys::RegularExpression file_removed_line2(
!     "cvs update: warning: `?([^']*)'? is not \\(any longer\\) pertinent");
    cmsys::RegularExpression file_update_line("([A-Z])  *(.*)");
    std::string current_path = "<no-path>";
***************
*** 703,706 ****
--- 705,713 ----
        line = removed_line.c_str();
        }
+     else if ( file_removed_line2.find(line) )
+       {
+       removed_line = "D " + file_removed_line2.match(1);
+       line = removed_line.c_str();
+       }
      if ( file_update_line.find(line) )
        {



More information about the Cmake-commits mailing list