You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Andrew Zhang <zh...@gmail.com> on 2006/05/05 02:33:15 UTC
Re: [jira] Commented: (HARMONY-33) java.nio.BufferOverflow exception while decoding ByteBuffer with UTF-16 charset
Hi, Vladimir
The bug has been raised in ICU bug tracking system serveral months ago[1].
ICU has noticed this bug and will fix the bug in next release version.
Thanks.
[1] (http://bugs.icu-project.org/cgi-bin/icu-bugs/conversion?id=5074)
On 5/4/06, Vladimir Strigun (JIRA) <ji...@apache.org> wrote:
>
> [
> http://issues.apache.org/jira/browse/HARMONY-33?page=comments#action_12377817]
>
> Vladimir Strigun commented on HARMONY-33:
> -----------------------------------------
>
> Unfortunately the bug should be reopened. I have the next output with
> Harmony33 class:
>
> java.lang.IllegalArgumentException: The length must be positive.
> at java.nio.charset.CoderResult.malformedForLength(CoderResult.java
> :152)
> at com.ibm.icu4jni.charset.CharsetDecoderICU.implFlush(Unknown
> Source)
> at java.nio.charset.CharsetDecoder.flush(CharsetDecoder.java:571)
> at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:254)
> at Harmony33.main(Harmony33.java:11)
>
> It's not a regression, the problem here is inside implFlush method of
> CharsetDecoderICU .
> Corresponding bug was submitted to ICU already:
> http://bugs.icu-project.org/cgi-bin/icu-bugs?findid=5074
> So, we just need to wait until we get new version of ICU library.
>
> > java.nio.BufferOverflow exception while decoding ByteBuffer with UTF-16
> charset
> >
> -------------------------------------------------------------------------------
> >
> > Key: HARMONY-33
> > URL: http://issues.apache.org/jira/browse/HARMONY-33
> > Project: Harmony
> > Type: Bug
>
> > Components: Classlib
> > Reporter: Vladimir Strigun
> > Assignee: Tim Ellison
> > Priority: Minor
>
> >
> > If I try to decode ByteBuffer with lengh 1 using UTF-16 decoder
> unexpected java.nio.BufferOverflow exception occured. Please see testcase
> below.
> > import java.nio.*;
> > import java.nio.charset.*;
> > import junit.framework.TestCase;
> > public class TestDecoder extends TestCase {
> > public static void main(String[] args) {
> > junit.textui.TestRunner.run(TestDecoder.class);
> > }
> > public static void testDecoder(){
> > try{
> > ByteBuffer bb = ByteBuffer.allocate(1);
> > bb.put(0,(byte)77);
> > CharsetDecoder utf16D = Charset.forName
> ("UTF-16").newDecoder();
> > CharBuffer cb = utf16D.onMalformedInput(
> CodingErrorAction.REPLACE).onUnmappableCharacter(CodingErrorAction.REPLACE
> ).decode(bb);
> > }catch(Exception e){
> > fail("Exception occured: "+e);
> > }
> > }
> > }
> > Output on RI:
> > .
> > Time: 0,03
> > OK (1 test)
> > Output with Harmony:
> > .F
> > Time: 0,01
> > There was 1 failure:
> > 1) testDecoder(TestDecoder)junit.framework.AssertionFailedError:
> Exception occured: java.nio.BufferOverflowException
> > at TestDecoder.testDecoder(TestDecoder.java:20)
> > at java.lang.reflect.AccessibleObject.invokeV(
> AccessibleObject.java:211)
> > at TestDecoder.main(TestDecoder.java:10)
> > FAILURES!!!
> > Tests run: 1, Failures: 1, Errors: 0
>
> --
> This message is automatically generated by JIRA.
> -
> If you think it was sent incorrectly contact one of the administrators:
> http://issues.apache.org/jira/secure/Administrators.jspa
> -
> For more information on JIRA, see:
> http://www.atlassian.com/software/jira
>
>
--
Andrew Zhang
China Software Development Lab, IBM
Re: [jira] Commented: (HARMONY-33) java.nio.BufferOverflow exception while decoding ByteBuffer with UTF-16 charset
Posted by Vladimir Strigun <vs...@gmail.com>.
Andrew,
thanks for your comments. Looks like the bug in ICU is very simple and
I hope it will be fixed in the next ICU release. I just like to reopen
harmony-33 to correctly track issue status. At the moment it
reproduced with icu4jni3.4 , that's why I asked to reopen. As soon as
we get new version of ICU bug should be closed.
Thanks.
Vladimir.
On 5/5/06, Andrew Zhang <zh...@gmail.com> wrote:
> Hi, Vladimir
>
> The bug has been raised in ICU bug tracking system serveral months ago[1].
>
> ICU has noticed this bug and will fix the bug in next release version.
>
> Thanks.
>
> [1] (http://bugs.icu-project.org/cgi-bin/icu-bugs/conversion?id=5074)
>
> On 5/4/06, Vladimir Strigun (JIRA) <ji...@apache.org> wrote:
> >
> > [
> > http://issues.apache.org/jira/browse/HARMONY-33?page=comments#action_12377817]
> >
> > Vladimir Strigun commented on HARMONY-33:
> > -----------------------------------------
> >
> > Unfortunately the bug should be reopened. I have the next output with
> > Harmony33 class:
> >
> > java.lang.IllegalArgumentException: The length must be positive.
> > at java.nio.charset.CoderResult.malformedForLength(CoderResult.java
> > :152)
> > at com.ibm.icu4jni.charset.CharsetDecoderICU.implFlush(Unknown
> > Source)
> > at java.nio.charset.CharsetDecoder.flush(CharsetDecoder.java:571)
> > at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:254)
> > at Harmony33.main(Harmony33.java:11)
> >
> > It's not a regression, the problem here is inside implFlush method of
> > CharsetDecoderICU .
> > Corresponding bug was submitted to ICU already:
> > http://bugs.icu-project.org/cgi-bin/icu-bugs?findid=5074
> > So, we just need to wait until we get new version of ICU library.
> >
> > > java.nio.BufferOverflow exception while decoding ByteBuffer with UTF-16
> > charset
> > >
> > -------------------------------------------------------------------------------
> > >
> > > Key: HARMONY-33
> > > URL: http://issues.apache.org/jira/browse/HARMONY-33
> > > Project: Harmony
> > > Type: Bug
> >
> > > Components: Classlib
> > > Reporter: Vladimir Strigun
> > > Assignee: Tim Ellison
> > > Priority: Minor
> >
> > >
> > > If I try to decode ByteBuffer with lengh 1 using UTF-16 decoder
> > unexpected java.nio.BufferOverflow exception occured. Please see testcase
> > below.
> > > import java.nio.*;
> > > import java.nio.charset.*;
> > > import junit.framework.TestCase;
> > > public class TestDecoder extends TestCase {
> > > public static void main(String[] args) {
> > > junit.textui.TestRunner.run(TestDecoder.class);
> > > }
> > > public static void testDecoder(){
> > > try{
> > > ByteBuffer bb = ByteBuffer.allocate(1);
> > > bb.put(0,(byte)77);
> > > CharsetDecoder utf16D = Charset.forName
> > ("UTF-16").newDecoder();
> > > CharBuffer cb = utf16D.onMalformedInput(
> > CodingErrorAction.REPLACE).onUnmappableCharacter(CodingErrorAction.REPLACE
> > ).decode(bb);
> > > }catch(Exception e){
> > > fail("Exception occured: "+e);
> > > }
> > > }
> > > }
> > > Output on RI:
> > > .
> > > Time: 0,03
> > > OK (1 test)
> > > Output with Harmony:
> > > .F
> > > Time: 0,01
> > > There was 1 failure:
> > > 1) testDecoder(TestDecoder)junit.framework.AssertionFailedError:
> > Exception occured: java.nio.BufferOverflowException
> > > at TestDecoder.testDecoder(TestDecoder.java:20)
> > > at java.lang.reflect.AccessibleObject.invokeV(
> > AccessibleObject.java:211)
> > > at TestDecoder.main(TestDecoder.java:10)
> > > FAILURES!!!
> > > Tests run: 1, Failures: 1, Errors: 0
> >
> > --
> > This message is automatically generated by JIRA.
> > -
> > If you think it was sent incorrectly contact one of the administrators:
> > http://issues.apache.org/jira/secure/Administrators.jspa
> > -
> > For more information on JIRA, see:
> > http://www.atlassian.com/software/jira
> >
> >
>
>
> --
> Andrew Zhang
> China Software Development Lab, IBM
>
>
---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org