private void assertBlockAtEnd() throws IOException { if (compressionType == UNCOMPRESSED) { if (uncompressedBytesRemaining > 0) stream.error(); } else if (copyBytesRemaining > 0 || (huffmanTables.getNextLiteralValue(stream) != END_OF_COMPRESSED_BLOCK)) { stream.error(); } } void assertCompressedDataAtEnd() throws IOException {
private void assertBlockAtEnd() throws IOException { if (compressionType == UNCOMPRESSED) { if (uncompressedBytesRemaining > 0) stream.error(); } else if (copyBytesRemaining > 0 || (huffmanTables.getNextLiteralValue(stream) != END_OF_COMPRESSED_BLOCK)) { stream.error(); } } void assertCompressedDataAtEnd() throws IOException {
private void assertBlockAtEnd() throws IOException { if (compressionType == UNCOMPRESSED) { if (uncompressedBytesRemaining > 0) stream.error(); } else if (copyBytesRemaining > 0 || (huffmanTables.getNextLiteralValue(stream) != END_OF_COMPRESSED_BLOCK)) { stream.error(); } } void assertCompressedDataAtEnd() throws IOException {
private void assertBlockAtEnd() throws IOException { if (compressionType == UNCOMPRESSED) { if (uncompressedBytesRemaining > 0) stream.error(); } else if (copyBytesRemaining > 0 || (huffmanTables.getNextLiteralValue(stream) != END_OF_COMPRESSED_BLOCK)) { stream.error(); } } void assertCompressedDataAtEnd() throws IOException {
private void assertBlockAtEnd() throws IOException { if (compressionType == UNCOMPRESSED) { if (uncompressedBytesRemaining > 0) stream.error(); } else if (copyBytesRemaining > 0 || (huffmanTables.getNextLiteralValue(stream) != END_OF_COMPRESSED_BLOCK)) { stream.error(); } } void assertCompressedDataAtEnd() throws IOException {
private void assertBlockAtEnd() throws IOException { if (compressionType == UNCOMPRESSED) { if (uncompressedBytesRemaining > 0) stream.error(); } else if (copyBytesRemaining > 0 || (huffmanTables.getNextLiteralValue(stream) != END_OF_COMPRESSED_BLOCK)) { stream.error(); } } void assertCompressedDataAtEnd() throws IOException {
private void readCompressedDataHeader() throws IOException { byte headerByte1 = getNextIdatByte(); byte headerByte2 = getNextIdatByte(); int number = ((headerByte1 & 0xFF) << 8) | (headerByte2 & 0xFF); if (number % 31 != 0) error(); int compressionMethod = headerByte1 & 0x0F; if (compressionMethod != 8) error(); int windowSizeHint = (headerByte1 & 0xF0) >> 4; if (windowSizeHint > 7) error(); int windowSize = (1 << (windowSizeHint + 8)); lzBlockReader.setWindowSize(windowSize); int dictionary = (headerByte2 & (1 << 5)); if (dictionary != 0) error(); // int compressionLevel = (headerByte2 & 0xC0) >> 6; }
private void readCompressedDataHeader() throws IOException { byte headerByte1 = getNextIdatByte(); byte headerByte2 = getNextIdatByte(); int number = ((headerByte1 & 0xFF) << 8) | (headerByte2 & 0xFF); if (number % 31 != 0) error(); int compressionMethod = headerByte1 & 0x0F; if (compressionMethod != 8) error(); int windowSizeHint = (headerByte1 & 0xF0) >> 4; if (windowSizeHint > 7) error(); int windowSize = (1 << (windowSizeHint + 8)); lzBlockReader.setWindowSize(windowSize); int dictionary = (headerByte2 & (1 << 5)); if (dictionary != 0) error(); // int compressionLevel = (headerByte2 & 0xC0) >> 6; }
private void readCompressedDataHeader() throws IOException { byte headerByte1 = getNextIdatByte(); byte headerByte2 = getNextIdatByte(); int number = ((headerByte1 & 0xFF) << 8) | (headerByte2 & 0xFF); if (number % 31 != 0) error(); int compressionMethod = headerByte1 & 0x0F; if (compressionMethod != 8) error(); int windowSizeHint = (headerByte1 & 0xF0) >> 4; if (windowSizeHint > 7) error(); int windowSize = (1 << (windowSizeHint + 8)); lzBlockReader.setWindowSize(windowSize); int dictionary = (headerByte2 & (1 << 5)); if (dictionary != 0) error(); // int compressionLevel = (headerByte2 & 0xC0) >> 6; }
private void readCompressedDataHeader() throws IOException { byte headerByte1 = getNextIdatByte(); byte headerByte2 = getNextIdatByte(); int number = ((headerByte1 & 0xFF) << 8) | (headerByte2 & 0xFF); if (number % 31 != 0) error(); int compressionMethod = headerByte1 & 0x0F; if (compressionMethod != 8) error(); int windowSizeHint = (headerByte1 & 0xF0) >> 4; if (windowSizeHint > 7) error(); int windowSize = (1 << (windowSizeHint + 8)); lzBlockReader.setWindowSize(windowSize); int dictionary = (headerByte2 & (1 << 5)); if (dictionary != 0) error(); // int compressionLevel = (headerByte2 & 0xC0) >> 6; }
private void readCompressedDataHeader() throws IOException { byte headerByte1 = getNextIdatByte(); byte headerByte2 = getNextIdatByte(); int number = ((headerByte1 & 0xFF) << 8) | (headerByte2 & 0xFF); if (number % 31 != 0) error(); int compressionMethod = headerByte1 & 0x0F; if (compressionMethod != 8) error(); int windowSizeHint = (headerByte1 & 0xF0) >> 4; if (windowSizeHint > 7) error(); int windowSize = (1 << (windowSizeHint + 8)); lzBlockReader.setWindowSize(windowSize); int dictionary = (headerByte2 & (1 << 5)); if (dictionary != 0) error(); // int compressionLevel = (headerByte2 & 0xC0) >> 6; }
private void readCompressedDataHeader() throws IOException { byte headerByte1 = getNextIdatByte(); byte headerByte2 = getNextIdatByte(); int number = ((headerByte1 & 0xFF) << 8) | (headerByte2 & 0xFF); if (number % 31 != 0) error(); int compressionMethod = headerByte1 & 0x0F; if (compressionMethod != 8) error(); int windowSizeHint = (headerByte1 & 0xF0) >> 4; if (windowSizeHint > 7) error(); int windowSize = (1 << (windowSizeHint + 8)); lzBlockReader.setWindowSize(windowSize); int dictionary = (headerByte2 & (1 << 5)); if (dictionary != 0) error(); // int compressionLevel = (headerByte2 & 0xC0) >> 6; }
void checkAdler() throws IOException { int storedAdler = ((getNextIdatByte() & 0xFF) << 24) | ((getNextIdatByte() & 0xFF) << 16) | ((getNextIdatByte() & 0xFF) << 8) | (getNextIdatByte() & 0xFF); if (storedAdler != adlerValue) error(); }
void checkAdler() throws IOException { int storedAdler = ((getNextIdatByte() & 0xFF) << 24) | ((getNextIdatByte() & 0xFF) << 16) | ((getNextIdatByte() & 0xFF) << 8) | (getNextIdatByte() & 0xFF); if (storedAdler != adlerValue) error(); }
void checkAdler() throws IOException { int storedAdler = ((getNextIdatByte() & 0xFF) << 24) | ((getNextIdatByte() & 0xFF) << 16) | ((getNextIdatByte() & 0xFF) << 8) | (getNextIdatByte() & 0xFF); if (storedAdler != adlerValue) error(); }
void checkAdler() throws IOException { int storedAdler = ((getNextIdatByte() & 0xFF) << 24) | ((getNextIdatByte() & 0xFF) << 16) | ((getNextIdatByte() & 0xFF) << 8) | (getNextIdatByte() & 0xFF); if (storedAdler != adlerValue) error(); }
void checkAdler() throws IOException { int storedAdler = ((getNextIdatByte() & 0xFF) << 24) | ((getNextIdatByte() & 0xFF) << 16) | ((getNextIdatByte() & 0xFF) << 8) | (getNextIdatByte() & 0xFF); if (storedAdler != adlerValue) error(); }
void checkAdler() throws IOException { int storedAdler = ((getNextIdatByte() & 0xFF) << 24) | ((getNextIdatByte() & 0xFF) << 16) | ((getNextIdatByte() & 0xFF) << 8) | (getNextIdatByte() & 0xFF); if (storedAdler != adlerValue) error(); }
void readNextBlockHeader() throws IOException { isLastBlock = stream.getNextIdatBit() != 0; compressionType = (byte) stream.getNextIdatBits(2); if (compressionType > 2) stream.error(); if (compressionType == UNCOMPRESSED) { byte b1 = stream.getNextIdatByte(); byte b2 = stream.getNextIdatByte(); byte b3 = stream.getNextIdatByte(); byte b4 = stream.getNextIdatByte(); if (b1 != ~b3 || b2 != ~b4) stream.error(); uncompressedBytesRemaining = (b1 & 0xFF) | ((b2 & 0xFF) << 8); } else if (compressionType == COMPRESSED_DYNAMIC) { huffmanTables = PngHuffmanTables.getDynamicTables(stream); } else { huffmanTables = PngHuffmanTables.getFixedTables(); } }
void readNextBlockHeader() throws IOException { isLastBlock = stream.getNextIdatBit() != 0; compressionType = (byte) stream.getNextIdatBits(2); if (compressionType > 2) stream.error(); if (compressionType == UNCOMPRESSED) { byte b1 = stream.getNextIdatByte(); byte b2 = stream.getNextIdatByte(); byte b3 = stream.getNextIdatByte(); byte b4 = stream.getNextIdatByte(); if (b1 != ~b3 || b2 != ~b4) stream.error(); uncompressedBytesRemaining = (b1 & 0xFF) | ((b2 & 0xFF) << 8); } else if (compressionType == COMPRESSED_DYNAMIC) { huffmanTables = PngHuffmanTables.getDynamicTables(stream); } else { huffmanTables = PngHuffmanTables.getFixedTables(); } }