From 5134584a32101dad1ed7691a25cf3309c2994e50 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 31 Jul 2000 22:47:52 +0000 Subject: Update. 2000-07-30 Bruno Haible * iconvdata/sjis.c (BODY for FROM_LOOP): Treat the case ch >= 0x81 && ch2 < 0x40 as invalid. 2000-07-30 Bruno Haible * iconvdata/uhc.c (BODY for FROM_LOOP): Reject ch2 == 0xff as invalid. (BODY for TO_LOOP): Accept 0x7f. Increment outptr as needed. 2000-07-30 Bruno Haible * iconvdata/johab.c (BODY for TO_LOOP): After calling ucs4_to_ksc5601_sym, fix the conversion to JOHAB. 2000-07-30 Bruno Haible * iconvdata/t.61.c (to_ucs4): Change values of 0xa4, 0a6, 0xa8, 0xb4, 0xb8. (from_ucs4): Change values of U+00A4, U+00BB, U+00ED. 2000-07-30 Bruno Haible * iconvdata/macintosh.c (HAS_HOLES): Set to 1. 2000-07-30 Bruno Haible * iconvdata/iso_6937.c (to_ucs4): Change values of 0x24 and 0xb4. (from_ucs4): Change values of U+00A4 and U+00ED. (BODY of TO_LOOP): Remove mapping from U+02DC to 0x0020. 2000-07-30 Bruno Haible * iconvdata/ansi_x3.110.c (from_ucs4): Change entry for 0xed. (BODY for TO_LOOP): Map U+2122, U+2126, not U+2022, U+2026. 2000-07-30 Bruno Haible * iconvdata/Makefile (gen-8bit-gap-modules): Remove isiri-3342. * iconvdata/isiri-3342.h: New file. * iconvdata/isiri-3342.c (HAS_HOLES): Avoid gaps >= 0xe0, but don't treat 0x80 as a gap. 2000-07-30 Bruno Haible * string/strxfrm.c (encoding_mask, encoding_byte): Remove. (utf8_encode): Use simple shifts instead. Fix return value. --- iconvdata/ansi_x3.110.c | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'iconvdata/ansi_x3.110.c') diff --git a/iconvdata/ansi_x3.110.c b/iconvdata/ansi_x3.110.c index d55af6fba7..ed312a0285 100644 --- a/iconvdata/ansi_x3.110.c +++ b/iconvdata/ansi_x3.110.c @@ -319,7 +319,7 @@ static const char from_ucs4[][2] = /* 0x00dc */ "\xc8\x55", "\xc2\x59", "\xec\x00", "\xfb\x00", "\xc1\x61", /* 0x00e1 */ "\xc2\x61", "\xc3\x61", "\xc4\x61", "\xc8\x61", "\xca\x61", /* 0x00e6 */ "\xf1\x00", "\xcb\x63", "\xc1\x65", "\xc2\x65", "\xc3\x65", - /* 0x00eb */ "\xc8\x65", "\xc1\x69", "\xc2\xe9", "\xc3\x69", "\xc8\x69", + /* 0x00eb */ "\xc8\x65", "\xc1\x69", "\xc2\x69", "\xc3\x69", "\xc8\x69", /* 0x00f0 */ "\xf3\x00", "\xc4\x6e", "\xc1\x6f", "\xc2\x6f", "\xc3\x6f", /* 0x00f5 */ "\xc4\x6f", "\xc8\x6f", "\xb8\x00", "\xf9\x00", "\xc1\x75", /* 0x00fa */ "\xc2\x75", "\xc3\x75", "\xc8\x75", "\xc2\x79", "\xfc\x00", @@ -487,11 +487,10 @@ static const char from_ucs4[][2] = tmp[1] = ' '; \ cp = tmp; \ } \ - else if (ch >= 0x2014 && ch <= 0x2026) \ + else if (ch >= 0x2014 && ch <= 0x201d) \ { \ - static const char map[19] = \ - "\xd0\x00\x00\x00\xa9\xb9\x00\x00\xaa\xba\x00\x00\x00\x00" \ - "\xd4\x00\x00\x00\xe0"; \ + static const char map[10] = \ + "\xd0\x00\x00\x00\xa9\xb9\x00\x00\xaa\xba"; \ \ tmp[0] = map[ch - 0x2014]; \ if (tmp[0] == '\0') \ @@ -502,6 +501,20 @@ static const char from_ucs4[][2] = tmp[1] = '\0'; \ cp = tmp; \ } \ + else if (ch >= 0x2122 && ch <= 0x2126) \ + { \ + static const char map[5] = \ + "\xd4\x00\x00\x00\xe0"; \ + \ + tmp[0] = map[ch - 0x2122]; \ + if (tmp[0] == '\0') \ + { \ + /* Illegal characters. */ \ + STANDARD_ERR_HANDLER (4); \ + } \ + tmp[1] = '\0'; \ + cp = tmp; \ + } \ else if (ch >= 0x215b && ch <= 0x215e) \ { \ tmp[0] = 0xdc + ch - 0x215b; \ -- cgit v1.2.3