[Cmake-commits] [cmake-commits] king committed cmCTestBZR.cxx 1.1 1.2

cmake-commits at cmake.org cmake-commits at cmake.org
Mon May 18 10:34:37 EDT 2009


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

Modified Files:
	cmCTestBZR.cxx 
Log Message:
BUG: Parse more bzr xml output encodings

The BZR xml output plugin can use some encodings that are not recognized
by expat, which leads to "Error parsing bzr log xml: unknown encoding".
This works around the problem by giving expat a mapping, and adds a
test.  Patch from Tom Vercauteren.  See issue #6857.


Index: cmCTestBZR.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CTest/cmCTestBZR.cxx,v
retrieving revision 1.1
retrieving revision 1.2
diff -C 2 -d -r1.1 -r1.2
*** cmCTestBZR.cxx	14 May 2009 20:13:51 -0000	1.1
--- cmCTestBZR.cxx	18 May 2009 14:34:32 -0000	1.2
***************
*** 68,72 ****
      };
  
!   if ( name==std::string("ascii") || name==std::string("cp1252") )
      {
      for(unsigned int i=0;i<256;++i) info->map[i] = latin1[i];
--- 68,77 ----
      };
  
!   // The BZR xml output plugin can use some encodings that are not
!   // recognized by expat.  This will lead to an error, e.g. "Error
!   // parsing bzr log xml: unknown encoding", the following is a
!   // workaround for these unknown encodings.
!   if(name == std::string("ascii") || name == std::string("cp1252") ||
!      name == std::string("ANSI_X3.4-1968"))
      {
      for(unsigned int i=0;i<256;++i) info->map[i] = latin1[i];



More information about the Cmake-commits mailing list