private void FillBuffer(byte[] buffer, int offset, int count) { int read; while ((read = BaseStream.Read (buffer, offset, count - offset)) > 0) { offset += read; } if (read == -1) throw new EndOfStreamException (); }