commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Goitia Amigo (JIRA)" <j...@apache.org>
Subject [jira] [Created] (VFS-624) LocalFileRandomAccessContent returning wrong value when reading 0xFF
Date Sun, 09 Oct 2016 22:03:20 GMT
David Goitia Amigo created VFS-624:
--------------------------------------

             Summary: LocalFileRandomAccessContent returning wrong value when reading 0xFF
                 Key: VFS-624
                 URL: https://issues.apache.org/jira/browse/VFS-624
             Project: Commons VFS
          Issue Type: Bug
    Affects Versions: 2.1, 2.0
            Reporter: David Goitia Amigo
            Priority: Critical


The LocalFileRandomAccessContent InputStream used for reading a byte as an int is calling
the RandomAccessFile method readByte(byte), so it returns -1 in case of EOFException, but
also in case of reading 0xFF in a file.

This also violates the expected behaviour of the read() method of the InputStream as can return
negative values as result of the casting, while should only return an int value beetween 0
and 255, or -1 in case of eof.

This problem is also inherited by the default read(byte[]) and read(byte[], int off, int length).

The solution is to change the implementation to:
 raf.read();



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message