|
Problem: Unicode->UJIS followed incorrect conversion
rules for U+00A5 YEN SIGN and U+203E OVERLINE,
so these characters were converted to ujis 0x8E5C
and 0x8E7E accordingly.
This behaviour would be correct for a JIS-X-0201 based character set,
but this is wrong for UJIS, which is documented as x-eucjp-unicode-0.9,
and which is based on ASCII for the range U+0000..U+007F.
Fix:
removing JIS-X-0201 conversion rules, making UJIS ASCII compatible.
YEN SIGN and OVERLINE do not have corresponding UJIS characters anymore
and converted to 0x3F QUESTION MARK, throwing a warning in appropriative cases.
This patch also includes a test covering full UJIS->Unicode->UJIS mapping.
sql/field.cc:
Nicer error message format:
always use HEX notation when printing warnings about UCS2 values -
this is more readable.
strings/ctype-ujis.c:
Removing incorrect Unicode->UJIS mapping.
MySQL "UJIS" is x-eucjp-unicode-0.9.
mysql-test/r/ctype_ujis_ucs2.result:
New BitKeeper file ``mysql-test/r/ctype_ujis_ucs2.result''
mysql-test/t/ctype_ujis_ucs2.test:
New BitKeeper file ``mysql-test/t/ctype_ujis_ucs2.test''
|