From 23bf5cb7b2c0876ff05117aa9dec623f09ea2c55 Mon Sep 17 00:00:00 2001 From: Harald Kuhr Date: Fri, 6 Aug 2021 09:59:07 +0200 Subject: [PATCH 1/2] Minor clean-up. --- .../imageio/metadata/tiff/TIFFWriter.java | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFWriter.java b/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFWriter.java index f8ed4104..843e2bef 100644 --- a/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFWriter.java +++ b/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFWriter.java @@ -30,23 +30,27 @@ package com.twelvemonkeys.imageio.metadata.tiff; +import static com.twelvemonkeys.imageio.metadata.tiff.TIFFEntry.getType; +import static com.twelvemonkeys.imageio.metadata.tiff.TIFFEntry.getValueLength; + +import java.io.IOException; +import java.nio.ByteOrder; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.Comparator; +import java.util.List; + +import javax.imageio.IIOException; +import javax.imageio.stream.ImageOutputStream; + import com.twelvemonkeys.imageio.metadata.CompoundDirectory; import com.twelvemonkeys.imageio.metadata.Directory; import com.twelvemonkeys.imageio.metadata.Entry; import com.twelvemonkeys.imageio.metadata.MetadataWriter; import com.twelvemonkeys.lang.Validate; -import javax.imageio.IIOException; -import javax.imageio.stream.ImageOutputStream; -import java.io.IOException; -import java.nio.ByteOrder; -import java.nio.charset.Charset; -import java.nio.charset.StandardCharsets; -import java.util.*; - -import static com.twelvemonkeys.imageio.metadata.tiff.TIFFEntry.getType; -import static com.twelvemonkeys.imageio.metadata.tiff.TIFFEntry.getValueLength; - /** * TIFFWriter * @@ -58,7 +62,7 @@ public final class TIFFWriter extends MetadataWriter { private static final int WORD_LENGTH = 2; private static final int LONGWORD_LENGTH = 4; - private static final int ENTRY_LENGTH = 12; + private static final long ENTRY_LENGTH = 12; public boolean write(final Collection entries, final ImageOutputStream stream) throws IOException { return write(new IFD(entries), stream); @@ -248,7 +252,7 @@ public final class TIFFWriter extends MetadataWriter { private int getCount(final Entry entry) { Object value = entry.getValue(); - return value instanceof String ? ((String) value).getBytes(Charset.forName("UTF-8")).length + 1 : entry.valueCount(); + return value instanceof String ? ((String) value).getBytes(StandardCharsets.UTF_8).length + 1 : entry.valueCount(); } private void writeValueInline(final Object value, final short type, final ImageOutputStream stream) throws IOException { From ce997a69519efb9c0130e709cdc898c1e4ea2b33 Mon Sep 17 00:00:00 2001 From: Harald Kuhr Date: Fri, 6 Aug 2021 10:10:34 +0200 Subject: [PATCH 2/2] Some more minor clean-up. --- .../twelvemonkeys/imageio/metadata/tiff/TIFFReader.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFReader.java b/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFReader.java index 6d2cf773..5e72a554 100644 --- a/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFReader.java +++ b/imageio/imageio-metadata/src/main/java/com/twelvemonkeys/imageio/metadata/tiff/TIFFReader.java @@ -73,16 +73,17 @@ public final class TIFFReader extends MetadataReader { } }; - map.put(TIFF.TAG_SUB_IFD, Collections.unmodifiableCollection(Collections.singleton(TIFF.TAG_SUB_IFD))); - map.put(TIFF.TAG_EXIF_IFD, Collections.unmodifiableCollection(Collections.singleton(TIFF.TAG_INTEROP_IFD))); + map.put(TIFF.TAG_SUB_IFD, Collections.singleton(TIFF.TAG_SUB_IFD)); + map.put(TIFF.TAG_EXIF_IFD, Collections.singleton(TIFF.TAG_INTEROP_IFD)); return Collections.unmodifiableMap(map); } + private final Set parsedIFDs = new TreeSet<>(); + private long length; private boolean longOffsets; private int offsetSize; - private Set parsedIFDs = new TreeSet<>(); @Override public Directory read(final ImageInputStream input) throws IOException {