harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Zhang" <zhanghuang...@gmail.com>
Subject [classlib][sql] A RI's bug of SerialBlob.getBytes(long position, int length)?
Date Mon, 11 Dec 2006 11:47:22 GMT
Hi folks,
SerialBlob spec points out that getBytes(long position, int length) should
throw SerialException if the given starting position is out of bounds. But
RI also throws SerialException when the position is in the bound of the
array in some other cases. Consider following code:

public void testGetBytesJI1() throws Exception {
        byte[] buf = { 1, 2, 3, 4, 5, 6, 7, 8 };
        SerialBlob serialBlob = new SerialBlob(buf);
        byte [] data = serialBlob.getBytes(2, 1);
        assertEquals(1, data.length);
        assertEquals(2, data[0]);

IMO, the starting position 2 and the length 1 are both valid. But RI throws
SerialException with message "Invalid arguments: position cannot be less
that 1". Is it a bug of RI? Or did I missing something? Any suggestions?
Thanks in advance!

Best regards,
Andrew Zhang

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message