diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-04-15 17:02:23 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-04-15 17:02:23 +0000 |
commit | f1fa8b68f3e7623a3ef86dcd0c7d090ccf0389f5 (patch) | |
tree | 6779500e7e6e0d2dae115fc25d6b199efd1a76ee /iconvdata/8bit-generic.c | |
parent | 479e9b3f2135707d4bfd13bf6c2ad1a242ea6cfc (diff) | |
download | glibc-f1fa8b68f3e7623a3ef86dcd0c7d090ccf0389f5.zip glibc-f1fa8b68f3e7623a3ef86dcd0c7d090ccf0389f5.tar.gz glibc-f1fa8b68f3e7623a3ef86dcd0c7d090ccf0389f5.tar.bz2 |
Update.
1998-04-15 16:41 Ulrich Drepper <drepper@cygnus.com>
Don't name internal representation since it might be different from
the external form (namely on little endian machines).
* iconv/gconv_builtin.h: Add UCS4 support. Change references to
UCS4 into references to INTERNAL.
* iconv/gconv_simple.c: Implement UCS4<->INTERNAL converters.
Add endianess support to UCS functions. Change references to
UCS4 into references to INTERNAL.
* iconv/gconv_int.h: Change references to UCS4 into references to
INTERNAL.
* iconv/iconv_prog.c: Don't mention INTERNAL in --list output.
* iconvdata/gconv-modules: Change accordingly.
* wcsmbs/wcsmbsload.c: Change names to use INTERNAL.
* iconv/gconv_simple.c: Adjust input buffer pointer for output buffer
overflow.
* iconvdata/8bit-gap.c: Likewise.
* iconvdata/8bit-generic.c: Likewise.
* iconvdata/big5.c: Likewise.
* iconvdata/euccn.c: Likewise.
* iconvdata/eucjp.c: Likewise.
* iconvdata/euckr.c: Likewise.
* iconvdata/euctw.c: Likewise.
* iconvdata/iso646.c: Likewise.
* iconvdata/iso6937.c: Likewise.
* iconvdata/iso8859-1.c: Likewise.
* iconvdata/johab.c: Likewise.
* iconvdata/sjis.c: Likewise.
* iconvdata/t61.c: Likewise.
* iconvdata/uhc.c: Likewise.
* iconvdata/8bit-gap.c: Correct access to to_ucs4 array.
* iconvdata/8bit-generic.c: Likewise.
* iconvdata/TESTS: Add more tests.
* sysdeps/i386/bits/byteswap.h: Change to use "=r" when ror is used.
1998-04-15 11:47 Ulrich Drepper <drepper@cygnus.com>
* iconvdata/Makefile: Better rules to run tests.
* iconvdata/testdata/ISO-8859-1..UTF8: New file.
* iconvdata/testdata/ISO-8859-10: Likewise.
* iconvdata/testdata/ISO-8859-10..UCS2: Likewise.
* iconvdata/testdata/ISO-8859-2: Likewise.
* iconvdata/testdata/ISO-8859-2..UCS4: Likewise.
* iconvdata/testdata/ISO-8859-2..UTF8: Likewise.
* iconvdata/testdata/ISO-8859-3: Likewise.
* iconvdata/testdata/ISO-8859-4: Likewise.
* iconvdata/testdata/ISO-8859-5: Likewise.
* iconvdata/testdata/ISO-8859-6: Likewise.
* iconvdata/testdata/ISO-8859-7: Likewise.
* iconvdata/testdata/ISO-8859-8: Likewise.
* iconvdata/testdata/ISO-8859-9: Likewise.
* iconvdata/run-iconv-test.sh: Handle $from..$t file to compare
intermediate result (if available).
* iconvdata/Makefile: Add rules to run run-iconv-test.sh.
(distribute): Add run-iconv-test.sh and testdata/*.
* stdlib/testmb.c (main): Simplify mbc array handling.
* iconvdata/testdata/ISO-8859-1: New file.
Diffstat (limited to 'iconvdata/8bit-generic.c')
-rw-r--r-- | iconvdata/8bit-generic.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/iconvdata/8bit-generic.c b/iconvdata/8bit-generic.c index 52cd540..19194ad 100644 --- a/iconvdata/8bit-generic.c +++ b/iconvdata/8bit-generic.c @@ -97,7 +97,7 @@ gconv (struct gconv_step *step, struct gconv_step_data *data, while (cnt < inchars && (outwchars + sizeof (wchar_t) <= data->outbufsize)) { - wchar_t ch = to_ucs4[(unsigned int) inbuf[cnt]]; + wchar_t ch = to_ucs4[((unsigned char *) inbuf)[cnt]]; if (ch == L'\0' && inbuf[cnt] != '\0') { @@ -112,6 +112,7 @@ gconv (struct gconv_step *step, struct gconv_step_data *data, ++cnt; } *inbufsize -= cnt; + inbuf += cnt; data->outbufavail = outwchars; } else @@ -136,6 +137,7 @@ gconv (struct gconv_step *step, struct gconv_step_data *data, cnt += sizeof (wchar_t); } *inbufsize -= cnt; + inbuf += cnt; data->outbufavail = outchars; if (outchars < data->outbufsize) |