@Override
	public int read() throws IOException {

		int byteRead = currentDecompressedBlockInputStream.read();

		if (byteRead == -1) {
			if (currentCompressedBlockIndex < cramFsBlockReader.getNumBlockPointers()) {
				currentDecompressedBlockInputStream =
					cramFsBlockReader.readDataBlockDecompressed(currentCompressedBlockIndex);
				byteRead = currentDecompressedBlockInputStream.read();
				currentCompressedBlockIndex++;
			}
		}
		return byteRead;
	}
Constructor for lazy cramfs input stream.
@param provider byte provider for the input stream.
@param cramfsInode the parent node for the input stream.
@param isLittleEndian returns true if the input stream is little endian.
@throws IOException if there is an error when creating the input stream.
Ghidra/Features/FileFormats/src/main/java/ghidra/file/formats/cramfs/LazyCramFsInputStream.java