diff options
author | Anthony Green <green@redhat.com> | 2000-01-31 08:56:09 +0000 |
---|---|---|
committer | Anthony Green <green@gcc.gnu.org> | 2000-01-31 08:56:09 +0000 |
commit | ab5cffc5e8a1720ad3168310d1e4bb13d430ffc1 (patch) | |
tree | 0f3ed1e1568d3f064c4b84ca0b491b4dcc001b25 | |
parent | cbea2acb2409b70e79b2e9d5143b9f02f72e6198 (diff) | |
download | gcc-ab5cffc5e8a1720ad3168310d1e4bb13d430ffc1.zip gcc-ab5cffc5e8a1720ad3168310d1e4bb13d430ffc1.tar.gz gcc-ab5cffc5e8a1720ad3168310d1e4bb13d430ffc1.tar.bz2 |
natIconv.cc (read): Minor fixes.
* gnu/gcj/convert/natIconv.cc (read): Minor fixes.
(write): Ditto.
From-SVN: r31712
-rw-r--r-- | libjava/ChangeLog | 5 | ||||
-rw-r--r-- | libjava/gnu/gcj/convert/natIconv.cc | 16 |
2 files changed, 16 insertions, 5 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 1484947..6a7ba36 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +Mon Jan 31 00:43:15 2000 Anthony Green <green@redhat.com> + + * gnu/gcj/convert/natIconv.cc (read): Minor fixes. + (write): Ditto. + 2000-01-30 Tom Tromey <tromey@cygnus.com> * include/config.h.in: Rebuilt. diff --git a/libjava/gnu/gcj/convert/natIconv.cc b/libjava/gnu/gcj/convert/natIconv.cc index 129db7e..ee3490a 100644 --- a/libjava/gnu/gcj/convert/natIconv.cc +++ b/libjava/gnu/gcj/convert/natIconv.cc @@ -69,9 +69,12 @@ gnu::gcj::convert::Input_iconv::read (jcharArray outbuffer, size_t outavail = count; size_t old_out = outavail; + const char *inbuf = (const char *) &bytes[inpos]; + char *outbuf = (char *) &out[outpos]; + size_t r = iconv ((iconv_t) handle, - &bytes[inpos], &inavail, - &out[outpos], &outavail); + &inbuf, &inavail, + &outbuf, &outavail); // FIXME: what if R==-1? inpos += old_in - inavail; @@ -118,7 +121,7 @@ gnu::gcj::convert::Output_iconv::write (jcharArray inbuffer, jint inpos, jint count) { #ifdef HAVE_ICONV - jint origpos = outpos; + jint origpos = inpos; jchar *chars = elements (inbuffer); jbyte *out = elements (buf); @@ -129,9 +132,12 @@ gnu::gcj::convert::Output_iconv::write (jcharArray inbuffer, size_t outavail = buf->length - count; size_t old_out = outavail; + const char *inbuf = (const char *) &chars[inpos]; + char *outbuf = (char *) &out[count]; + size_t r = iconv ((iconv_t) handle, - &chars[inpos], &inavail, - &out[count], &outavail); + &inbuf, &inavail, + &outbuf, &outavail); // FIXME: what if R==-1? count += old_out - outavail; |