You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Miroslav Pokorny (JIRA)" <ji...@apache.org> on 2011/07/19 07:07:57 UTC

[jira] [Commented] (VFS-355) RamFileProvider: ReadingRamFileRandomAccessContent InputStream of file does not return -1 when empty...

    [ https://issues.apache.org/jira/browse/VFS-355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13067498#comment-13067498 ] 

Miroslav Pokorny commented on VFS-355:
--------------------------------------

replacing RamFileRandomAccessContent.InputStream.read(byte[],int,int) with the code below *WORKS*...

@Override
            public int read(byte b[], int off, int len) throws IOException {
                int count = -1;
                final int left = getLeftBytes();
                if (left > 0) {
                    count = Math.min(len, left);
                    RamFileRandomAccessContent.this.readFully(b, off, count);
                    ;
                }
                return count;
            }

> RamFileProvider: ReadingRamFileRandomAccessContent InputStream of file does not return -1 when empty...
> -------------------------------------------------------------------------------------------------------
>
>                 Key: VFS-355
>                 URL: https://issues.apache.org/jira/browse/VFS-355
>             Project: Commons VFS
>          Issue Type: Bug
>    Affects Versions: 1.0
>         Environment: N/A
>            Reporter: Miroslav Pokorny
>
> RamFileRandomAccessContent
> public int read(byte b[], int off, int len) throws IOException
> 			{
> 				int retLen = Math.min(len, getLeftBytes());
> 				RamFileRandomAccessContent.this.readFully(b, off, retLen);
> 				return retLen;
> 			}
> Notice retLen should return 1 if getLeftBytes() returns 0 but it doesnt. When empty it simply returns 0 which means if one reads until -1 it never happens...

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira