]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Fix CP1258 conversion
authorUlrich Drepper <drepper@gmail.com>
Sat, 21 May 2011 15:33:05 +0000 (11:33 -0400)
committerUlrich Drepper <drepper@gmail.com>
Sat, 21 May 2011 15:33:05 +0000 (11:33 -0400)
a5 ec was mishandled and the other direction appropriately so, too.

ChangeLog
NEWS
iconvdata/CP1258.irreversible
iconvdata/cp1258.c

index 2fac3560d3dce4bdba6372819ebd67f7853ec571..a1dca5d90b56f49230ef498b64e610ed9219e40f 100644 (file)
--- a/ChangeLog
+++ b/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.
 
diff --git a/NEWS b/NEWS
index 5eb39e4b28344c7495a740ff9e078e539edbf10e..a99c74a041a6a0985d7a844446f8836a1f4e5345 100644 (file)
--- a/NEWS
+++ b/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.
index 68a54812d69b2e5089ca0a9e42478fbba02f0f6d..cec1382448d2340e034e8fbd0a98deb824a2ac17 100644 (file)
@@ -96,8 +96,8 @@
 0x79F2 0x1EF5
 0x7AEC 0x017A
 0x7AF2 0x1E93
-0xA5EC 0x0385
 0xA8CC 0x1FED
+0xA8EC 0x0385
 0xA8EC 0x1FEE
 0xC2CC 0x1EA6
 0xC2D2 0x1EA8
index d1b2be41254f0692f8159a22e08cf29a83cec3fc..2b741ba96fec452f4936db4733399b16b1cb18a9 100644 (file)
@@ -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 },