Fix buffer usage which results in data corruption in BlockOutStream

Prior to this, use of BlockOutStream.write() with a non-zero offset would corrupt the block data once we exceed the file limit (default 1MB).