Browse Source

Fix CP1258 conversion

a5 ec was mishandled and the other direction appropriately so, too.
release/2.14/master
Ulrich Drepper 15 years ago
parent
commit
8e211fecca
  1. 5
      ChangeLog
  2. 3
      NEWS
  3. 2
      iconvdata/CP1258.irreversible
  4. 18
      iconvdata/cp1258.c

5
ChangeLog

@ -1,5 +1,10 @@
2011-05-21 Ulrich Drepper <drepper@gmail.com>
[BZ #12777]
* iconvdata/cp1258.c (comp_table_data): Remove entry 0x00A5 0xEC.
(decomp_table): Change U0385 entry to emit 0xA5 0xEC.
* iconvdata/CP1258.irreversible: Adjust entry 0xA8EC.
* configure.in: Fix typo in redirection and correct removal of test
files in two cases.

3
NEWS

@ -16,7 +16,8 @@ Version 2.14
12454, 12460, 12469, 12489, 12509, 12510, 12511, 12518, 12527, 12541,
12545, 12551, 12582, 12583, 12587, 12597, 12601, 12611, 12625, 12626,
12631, 12650, 12653, 12655, 12660, 12681, 12685, 12711, 12713, 12714,
12717, 12723, 12724, 12734, 12738, 12746, 12766, 12775, 12788, 12792
12717, 12723, 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12788,
12792
* The RPC implementation in libc is obsoleted. Old programs keep working
but new programs cannot be linked with the routines in libc anymore.

2
iconvdata/CP1258.irreversible

@ -96,8 +96,8 @@
0x79F2 0x1EF5
0x7AEC 0x017A
0x7AF2 0x1E93
0xA5EC 0x0385
0xA8CC 0x1FED
0xA8EC 0x0385
0xA8EC 0x1FEE
0xC2CC 0x1EA6
0xC2D2 0x1EA8

18
iconvdata/cp1258.c

@ -1,5 +1,5 @@
/* Conversion from and to CP1258.
Copyright (C) 1998, 2001, 2002, 2004 Free Software Foundation, Inc.
Copyright (C) 1998, 2001, 2002, 2004, 2011 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998,
and Bruno Haible <haible@clisp.cons.org>, 2001.
@ -92,7 +92,7 @@ static const uint16_t to_ucs4[128] =
0x20AC, 0, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
0x02C6, 0x2030, 0, 0x2039, 0x0152, 0, 0, 0,
/* 0x90 */
0, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
0, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
0x02DC, 0x2122, 0, 0x203A, 0x0153, 0, 0, 0x0178,
/* 0xA0 */
0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
@ -162,7 +162,7 @@ static const struct
{ 0x01AF, 0x1EEA },
{ 0x01B0, 0x1EEB },
#define COMP_TABLE_IDX_0301 (COMP_TABLE_IDX_0300 + COMP_TABLE_LEN_0300)
#define COMP_TABLE_LEN_0301 60
#define COMP_TABLE_LEN_0301 59
{ 0x0041, 0x00C1 },
{ 0x0043, 0x0106 },
{ 0x0045, 0x00C9 },
@ -197,7 +197,7 @@ static const struct
{ 0x0077, 0x1E83 },
{ 0x0079, 0x00FD },
{ 0x007A, 0x017A },
{ 0x00A5, 0x0385 },
/* { 0x00A5, 0x0385 }, Wrong, A5 is Yen sign */
{ 0x00A8, 0x1FEE },
{ 0x00C2, 0x1EA4 },
{ 0x00C5, 0x01FA },
@ -505,7 +505,7 @@ static const struct
static const unsigned char from_ucs4[] =
{
#define FROM_IDX_00 0
0xc4, 0xc5, 0xc6, 0xc7, /* 0x00c4-0x00c7 */
0xc4, 0xc5, 0xc6, 0xc7, /* 0x00c4-0x00c7 */
0xc8, 0xc9, 0xca, 0xcb, 0x00, 0xcd, 0xce, 0xcf, /* 0x00c8-0x00cf */
0x00, 0xd1, 0x00, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, /* 0x00d0-0x00d7 */
0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0x00d8-0x00df */
@ -517,7 +517,7 @@ static const unsigned char from_ucs4[] =
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0108-0x010f */
0xd0, 0xf0, /* 0x0110-0x0111 */
#define FROM_IDX_01 (FROM_IDX_00 + 78)
0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x0152-0x0157 */
0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x0152-0x0157 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0158-0x015f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0160-0x0167 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0168-0x016f */
@ -531,7 +531,7 @@ static const unsigned char from_ucs4[] =
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdd, /* 0x01a8-0x01af */
0xfd, /* 0x01b0-0x01b0 */
#define FROM_IDX_02 (FROM_IDX_01 + 95)
0x88, 0x00, /* 0x02c6-0x02c7 */
0x88, 0x00, /* 0x02c6-0x02c7 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x02c8-0x02cf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x02d0-0x02d7 */
0x00, 0x00, 0x00, 0x00, 0x98, /* 0x02d8-0x02dc */
@ -542,7 +542,7 @@ static const unsigned char from_ucs4[] =
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0318-0x031f */
0x00, 0x00, 0x00, 0xf2, /* 0x0320-0x0323 */
#define FROM_IDX_20 (FROM_IDX_03 + 36)
0x96, 0x97, 0x00, 0x00, 0x00, /* 0x2013-0x2017 */
0x96, 0x97, 0x00, 0x00, 0x00, /* 0x2013-0x2017 */
0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x2018-0x201f */
0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x2020-0x2027 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2028-0x202f */
@ -619,7 +619,7 @@ static const struct
{ 0x01fd, 0xe6, 0xec },
{ 0x01fe, 0xd8, 0xec },
{ 0x01ff, 0xf8, 0xec },
{ 0x0385, 0xa5, 0xec },
{ 0x0385, 0xa8, 0xec },
{ 0x1e04, 0x42, 0xf2 },
{ 0x1e05, 0x62, 0xf2 },
{ 0x1e08, 0xc7, 0xec },

Loading…
Cancel
Save