harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paulex Yang (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-549) [classlib][nio-channels]java.nio.channels.SocketChannel.read/write mis-acts in some condition.
Date Fri, 02 Jun 2006 06:12:30 GMT
     [ http://issues.apache.org/jira/browse/HARMONY-549?page=all ]

Paulex Yang updated HARMONY-549:

    Attachment: Harmony549.diff

Please try this patch, thank you. 

This patch includes the regression test and bug fixing, and also includes some modification
on the SocketChannelImpl related to async interrupt, which probablly are bugs, and they don't
show themselves just because we haven't got the AbstractInterruptibleChannel fully implemented.

> [classlib][nio-channels]java.nio.channels.SocketChannel.read/write mis-acts in some condition.
> ----------------------------------------------------------------------------------------------
>          Key: HARMONY-549
>          URL: http://issues.apache.org/jira/browse/HARMONY-549
>      Project: Harmony
>         Type: Bug

>   Components: Classlib
>     Reporter: Paulex Yang
>     Priority: Minor
>  Attachments: Harmony549.diff
> 1. java.nio.channels.SocketChannel.read(ByteBuffer[],int,int) & read(ByteBuffer[])
hang when reading a ByteBuffer array if one of its elements is null. The bug is caused by
incorrect sequence of ByteBuffer-checking. The elements must be checked before reading, currently
Harmony reads and won't throw NPE until it meets a null ByteBuffer.
> 2. java.nio.channels.SocketChannel.write(ByteBuffer[],int,int) should check if any elements
of ByteBuffer array is null before writing into socket. Currently Harmony writes and won't
throw NPE until it meets a null ByteBuffer.
> 3. java.nio.channels.SocketChannel.write(ByteBuffer) causes an IllegalArgumentException
while writing a bytebuffer whose position is not zero.
> 4. java.nio.channels.SocketChannel.write(ByteBuffer) should throw NPE ahead of ClosedChannelException.
When SocketChannel is closed and writes a null buf, it should throw NPE.
> 5. java.nio.channels.SocketChannel.read(ByteBuffer[],int,int) fails to return -1 when
the socket meets EOF. 
> I'll attach test cases and patch for them soon.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message