question: private int makeAvailable ( ) { if ( pos != - 1 ) { return 0 ; } total += tail - head - pad ; System . arraycopy ( buffer , tail - pad , buffer , 0 , pad ) ; head = 0 ; tail = pad ; for ( ; ; ) { int bytesRead = 0 ; try { bytesRead = input . read ( buffer , tail , bufSize - tail ) ; } catch ( IOException e ) { throw new RuntimeException ( "Error while reading multipart stream" ) ; } if ( bytesRead == - 1 ) { final String msg = "Stream ended unexpectedly" ; throw new MalformedStreamException ( msg ) ; } tail += bytesRead ; findSeparator ( ) ; int av = available ( ) ; if ( av > 0 || pos != - 1 ) { return av ; } } }
target:  Attempts to read more data.