Hi Peter, On Dec 20, 2017, at 8:04 AM, Peter Levart <peter.lev...@gmail.com> wrote:
>>> found another improvement. If you are reading from files, there's no >>> difference. But if you read from say socket(s), there may be short reads >>> (read() returning 0). >> InputStreams are blocking so if someone creates an InputStream over a socket >> configured non-blocking then they have to emulate blocking behavior. So >> assuming a non-zero byte array, then read should return a positive value or >> -1. >> >> -Alan. > > You are right Alan. I don't know why I assumed that 0 is a valid return value > (for non-empty array). So my last suggestion is unnecessary. Each buf will be > filled to the top before inner loop exits or the stream will be at EOF. Thanks for the suggestions. I’ll take a look at the first two later today. Brian