Hi Brian,
Present change of having long value as second argument is fine because we support usage of TIFFTag.TIFF_LONG data type in the constructor. I was checking for call hierarchy of this particular constructor from within JDK9. Most of the calls to this constructor are using either short or int value for second argument. In "public void addShortOrLongField(int tagNumber, int value)" of TIFFImageMetadata.java also we are calling this constructor. I think we should change addShortOrLongField() signature also to use long value for second argument, because we should support usage of TIFFTag.TIFF_LONG data type from addShortOrLongField(). Please let me know your inputs. Thanks, Jay From: Brian Burkhalter Sent: Wednesday, November 16, 2016 3:00 AM To: 2d-dev Subject: [OpenJDK 2D-Dev] [9] RFR JDK-8169725: cannot use TIFFField(TIFFTag tag, int value) for TIFF_LONG values greater than Integer.MAX_VALUE Please review at your convenience. Issue: https://bugs.openjdk.java.net/browse/JDK-8169725 Patch: [1] Change constructor TIFFField(TIFFTag,int) to TIFFField(TIFFTag,long). No documentation change is required. Thanks, Brian [1] diff --- a/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java +++ b/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java @@ -672,7 +672,7 @@ * for the supplied {@code TIFFTag}. * @throws IllegalArgumentException if {@code value < 0}. */ - public TIFFField(TIFFTag tag, int value) { + public TIFFField(TIFFTag tag, long value) { if(tag == null) { throw new NullPointerException("tag == null!"); }