title: InputStream read doesn't read the data
body: <p>I'm having an issue reading from a java input stream. I have a buffer of size 1024, and an input stream of size 29k-31k. I read the inputStream in a loop, but I only get 29 bytes for the first read, 39 for the second read, and nothing after that. The same behavior repeats for different InputStreams. (I'm writing the data to an output stream but I don't see how this can affect the first read)</p>
  
  <pre><code>        int bytesRead = 0;
          byte[] byteBuf = new byte[1024];
  
          OutputStream fileStream = FileUtil.openFileForWrite(saveTo);
  
          bytesRead = reader.read(byteBuf);
          while(bytesRead!=-1){
              fileStream.write(byteBuf, 0, bytesRead);
              bytesRead = reader.read(byteBuf);
          }
  </code></pre>
  
  <p>What am I missing?</p>
  
  <p>Any help is appreciated :)</p>