Changeset: 914c33c7de3e Author: sherman Date: 2009-05-21 23:32 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/914c33c7de3e
6843578: Re-implement IBM doublebyte charsets 6639450: IBM949C encoder modifies state of IBM949 encoder 6569191: Cp943 io converter returns U+0000 and U+FFFD for unconvertable character 6577466: Character encoder IBM970 throws a BufferOverflowException 5065777: CharsetEncoder canEncode() methods often incorrectly return false Summary: Re-write 11 IBM doublebyte charsets. Thanks Ulf.Zibis for the codereview! Reviewed-by: martin ! make/sun/nio/FILES_java.gmk ! make/sun/nio/Makefile + make/tools/CharsetMapping/DoubleByte-X.java + make/tools/CharsetMapping/IBM1381.c2b + make/tools/CharsetMapping/IBM1381.map + make/tools/CharsetMapping/IBM1383.c2b + make/tools/CharsetMapping/IBM1383.map + make/tools/CharsetMapping/IBM1383.nr + make/tools/CharsetMapping/IBM930.c2b + make/tools/CharsetMapping/IBM930.map + make/tools/CharsetMapping/IBM930.nr + make/tools/CharsetMapping/IBM933.c2b + make/tools/CharsetMapping/IBM933.map + make/tools/CharsetMapping/IBM935.c2b + make/tools/CharsetMapping/IBM935.map + make/tools/CharsetMapping/IBM935.nr + make/tools/CharsetMapping/IBM937.c2b + make/tools/CharsetMapping/IBM937.map + make/tools/CharsetMapping/IBM937.nr + make/tools/CharsetMapping/IBM939.c2b + make/tools/CharsetMapping/IBM939.map + make/tools/CharsetMapping/IBM939.nr + make/tools/CharsetMapping/IBM942.c2b + make/tools/CharsetMapping/IBM942.map + make/tools/CharsetMapping/IBM943.map + make/tools/CharsetMapping/IBM943.nr + make/tools/CharsetMapping/IBM948.c2b + make/tools/CharsetMapping/IBM948.map + make/tools/CharsetMapping/IBM949.map + make/tools/CharsetMapping/IBM950.c2b + make/tools/CharsetMapping/IBM950.map + make/tools/CharsetMapping/IBM970.c2b + make/tools/CharsetMapping/IBM970.map + make/tools/CharsetMapping/dbcs + make/tools/src/build/tools/charsetmapping/GenerateDBCS.java ! make/tools/src/build/tools/charsetmapping/Main.java ! src/share/classes/sun/io/ByteToCharCp1381.java ! src/share/classes/sun/io/ByteToCharCp1383.java ! src/share/classes/sun/io/ByteToCharCp834.java ! src/share/classes/sun/io/ByteToCharCp930.java ! src/share/classes/sun/io/ByteToCharCp933.java ! src/share/classes/sun/io/ByteToCharCp935.java ! src/share/classes/sun/io/ByteToCharCp937.java ! src/share/classes/sun/io/ByteToCharCp939.java ! src/share/classes/sun/io/ByteToCharCp942.java ! src/share/classes/sun/io/ByteToCharCp942C.java ! src/share/classes/sun/io/ByteToCharCp943.java ! src/share/classes/sun/io/ByteToCharCp943C.java ! src/share/classes/sun/io/ByteToCharCp948.java ! src/share/classes/sun/io/ByteToCharCp949.java ! src/share/classes/sun/io/ByteToCharCp949C.java ! src/share/classes/sun/io/ByteToCharCp950.java ! src/share/classes/sun/io/ByteToCharCp970.java ! src/share/classes/sun/io/ByteToCharDBCS_ASCII.java ! src/share/classes/sun/io/ByteToCharDBCS_EBCDIC.java + src/share/classes/sun/io/ByteToCharEUC2.java ! src/share/classes/sun/io/CharToByteCp1381.java ! src/share/classes/sun/io/CharToByteCp1383.java ! src/share/classes/sun/io/CharToByteCp834.java ! src/share/classes/sun/io/CharToByteCp930.java ! src/share/classes/sun/io/CharToByteCp933.java ! src/share/classes/sun/io/CharToByteCp935.java ! src/share/classes/sun/io/CharToByteCp937.java ! src/share/classes/sun/io/CharToByteCp939.java ! src/share/classes/sun/io/CharToByteCp942.java ! src/share/classes/sun/io/CharToByteCp942C.java ! src/share/classes/sun/io/CharToByteCp943.java ! src/share/classes/sun/io/CharToByteCp943C.java ! src/share/classes/sun/io/CharToByteCp948.java ! src/share/classes/sun/io/CharToByteCp949.java ! src/share/classes/sun/io/CharToByteCp949C.java ! src/share/classes/sun/io/CharToByteCp950.java ! src/share/classes/sun/io/CharToByteCp970.java ! src/share/classes/sun/io/CharToByteDBCS_ASCII.java ! src/share/classes/sun/io/CharToByteDBCS_EBCDIC.java - src/share/classes/sun/nio/cs/ext/DBCSDecoderMapping.java - src/share/classes/sun/nio/cs/ext/DBCS_IBM_ASCII_Decoder.java - src/share/classes/sun/nio/cs/ext/DBCS_IBM_ASCII_Encoder.java - src/share/classes/sun/nio/cs/ext/DBCS_IBM_EBCDIC_Decoder.java - src/share/classes/sun/nio/cs/ext/DBCS_IBM_EBCDIC_Encoder.java - src/share/classes/sun/nio/cs/ext/DBCS_ONLY_IBM_EBCDIC_Decoder.java + src/share/classes/sun/nio/cs/ext/DoubleByte.java - src/share/classes/sun/nio/cs/ext/IBM1381.java - src/share/classes/sun/nio/cs/ext/IBM1383.java ! src/share/classes/sun/nio/cs/ext/IBM834.java - src/share/classes/sun/nio/cs/ext/IBM930.java - src/share/classes/sun/nio/cs/ext/IBM933.java - src/share/classes/sun/nio/cs/ext/IBM935.java - src/share/classes/sun/nio/cs/ext/IBM937.java - src/share/classes/sun/nio/cs/ext/IBM939.java - src/share/classes/sun/nio/cs/ext/IBM942.java ! src/share/classes/sun/nio/cs/ext/IBM942C.java - src/share/classes/sun/nio/cs/ext/IBM943.java ! src/share/classes/sun/nio/cs/ext/IBM943C.java - src/share/classes/sun/nio/cs/ext/IBM948.java - src/share/classes/sun/nio/cs/ext/IBM949.java ! src/share/classes/sun/nio/cs/ext/IBM949C.java - src/share/classes/sun/nio/cs/ext/IBM950.java - src/share/classes/sun/nio/cs/ext/IBM970.java - src/share/classes/sun/nio/cs/ext/SimpleEUCDecoder.java ! test/sun/nio/cs/FindCanEncodeBugs.java ! test/sun/nio/cs/FindEncoderBugs.java + test/sun/nio/cs/OLD/DBCSDecoderMapping.java + test/sun/nio/cs/OLD/DBCS_IBM_ASCII_Decoder.java + test/sun/nio/cs/OLD/DBCS_IBM_ASCII_Encoder.java + test/sun/nio/cs/OLD/DBCS_IBM_EBCDIC_Decoder.java + test/sun/nio/cs/OLD/DBCS_IBM_EBCDIC_Encoder.java + test/sun/nio/cs/OLD/DBCS_ONLY_IBM_EBCDIC_Decoder.java + test/sun/nio/cs/OLD/IBM1381_OLD.java + test/sun/nio/cs/OLD/IBM1383_OLD.java + test/sun/nio/cs/OLD/IBM930_OLD.java + test/sun/nio/cs/OLD/IBM933_OLD.java + test/sun/nio/cs/OLD/IBM935_OLD.java + test/sun/nio/cs/OLD/IBM937_OLD.java + test/sun/nio/cs/OLD/IBM939_OLD.java + test/sun/nio/cs/OLD/IBM942C_OLD.java + test/sun/nio/cs/OLD/IBM942_OLD.java + test/sun/nio/cs/OLD/IBM943C_OLD.java + test/sun/nio/cs/OLD/IBM943_OLD.java + test/sun/nio/cs/OLD/IBM948_OLD.java + test/sun/nio/cs/OLD/IBM949C_OLD.java + test/sun/nio/cs/OLD/IBM949_OLD.java + test/sun/nio/cs/OLD/IBM950_OLD.java + test/sun/nio/cs/OLD/IBM970_OLD.java + test/sun/nio/cs/OLD/SimpleEUCDecoder.java + test/sun/nio/cs/OLD/TestIBMDB.java ! test/sun/nio/cs/TestEUC_TW.java ! test/sun/nio/cs/TestIBMBugs.java