diff options
author | bar@mysql.com <> | 2005-07-21 16:05:19 +0500 |
---|---|---|
committer | bar@mysql.com <> | 2005-07-21 16:05:19 +0500 |
commit | 6a97af8a02baafc383287e350c875d0da62d50ad (patch) | |
tree | 4fdf1326cbde0dcc060144daf1347e94032683e4 /strings | |
parent | b11e78381a909356c9df9739dd8ecde12089a98f (diff) | |
download | mariadb-git-6a97af8a02baafc383287e350c875d0da62d50ad.tar.gz |
Bug#11216: 'show character set' describes latin1 incorrectly
Index.xml:
Fixing latin1 comment:
it is actually cp1252, not iso-8859-1
ctype_latin1.result:
changeing test results accordingly.
ctype-latin1.c:
Fixed to- and from-Unicode conversion maps
for better Unicode round trip of undefined
characters.
Diffstat (limited to 'strings')
-rw-r--r-- | strings/ctype-latin1.c | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/strings/ctype-latin1.c b/strings/ctype-latin1.c index 4ab101add5b..07808569fa4 100644 --- a/strings/ctype-latin1.c +++ b/strings/ctype-latin1.c @@ -108,6 +108,13 @@ static uchar sort_order_latin1[] = { - continue to pretend the latin1 character set is ISO 8859-1 - actually allow the storage of euro etc. so it's actually cp1252 + + Also we'll map these five undefined cp1252 character: + 0x81, 0x8D, 0x8F, 0x90, 0x9D + into corresponding control characters: + U+0081, U+008D, U+008F, U+0090, U+009D. + like ISO-8859-1 does. Otherwise, loading "mysqldump" + output doesn't reproduce these undefined characters. */ unsigned short cs_to_uni[256]={ @@ -127,10 +134,10 @@ unsigned short cs_to_uni[256]={ 0x0068,0x0069,0x006A,0x006B,0x006C,0x006D,0x006E,0x006F, 0x0070,0x0071,0x0072,0x0073,0x0074,0x0075,0x0076,0x0077, 0x0078,0x0079,0x007A,0x007B,0x007C,0x007D,0x007E,0x007F, -0x20AC,0x0000,0x201A,0x0192,0x201E,0x2026,0x2020,0x2021, -0x02C6,0x2030,0x0160,0x2039,0x0152,0x0000,0x017D,0x0000, -0x0000,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014, -0x02DC,0x2122,0x0161,0x203A,0x0153,0x0000,0x017E,0x0178, +0x20AC,0x0081,0x201A,0x0192,0x201E,0x2026,0x2020,0x2021, +0x02C6,0x2030,0x0160,0x2039,0x0152,0x008D,0x017D,0x008F, +0x0090,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014, +0x02DC,0x2122,0x0161,0x203A,0x0153,0x009D,0x017E,0x0178, 0x00A0,0x00A1,0x00A2,0x00A3,0x00A4,0x00A5,0x00A6,0x00A7, 0x00A8,0x00A9,0x00AA,0x00AB,0x00AC,0x00AD,0x00AE,0x00AF, 0x00B0,0x00B1,0x00B2,0x00B3,0x00B4,0x00B5,0x00B6,0x00B7, @@ -161,10 +168,11 @@ unsigned char pl00[256]={ 0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F, 0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77, 0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x81,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x8D,0x00,0x8F, +0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x9D,0x00,0x00, + 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7, 0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7, |