From cda34b704b667ea81a5ec552c6539404d508999e Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 6 Sep 2022 00:17:01 +0200 Subject: [PATCH] Indicate support for lossless to ImageIO --- .../plugins/webp/WebPImageReaderSpi.java | 28 +------------------ 1 file changed, 1 insertion(+), 27 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java index f23ceec9..e146ed70 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java @@ -75,10 +75,8 @@ public final class WebPImageReaderSpi extends ImageReaderSpiBase { int chunk = stream.readInt(); switch (chunk) { - // TODO. Support lossless -// case WebP.CHUNK_VP8L: + case WebP.CHUNK_VP8L: case WebP.CHUNK_VP8X: - return containsSupportedChunk(stream, chunk); case WebP.CHUNK_VP8_: return true; default: @@ -91,30 +89,6 @@ public final class WebPImageReaderSpi extends ImageReaderSpiBase { } } - private static boolean containsSupportedChunk(ImageInputStream stream, int chunk) throws IOException { - // Temporary: Seek for VP8_, either first or second (after ICCP), or inside ANMF... - try { - while (chunk != WebP.CHUNK_VP8L && chunk != WebP.CHUNK_ALPH) { - long length = stream.readUnsignedInt(); - stream.seek(stream.getStreamPosition() + length); - chunk = stream.readInt(); - - // Look inside ANMF chunks... - if (chunk == WebP.CHUNK_ANMF) { - stream.seek(stream.getStreamPosition() + 4 + 16); - chunk = stream.readInt(); - } - - if (chunk == WebP.CHUNK_VP8_) { - return true; - } - } - } - catch (EOFException ignore) {} - - return false; - } - @Override public ImageReader createReaderInstance(final Object extension) { return new WebPImageReader(this);