-
Bug
-
Resolution: Fixed
-
P3
-
1.4.0
-
beta2
-
generic
-
generic
Name: bkR10012 Date: 03/28/2001
According to the spec. of the methods
javax.imageio.ImageTypeSpecifier.createBufferedImage and
javax.imageio.ImageTypeSpecifier.getSampleModel
all positive values of parameters width and height are valid.
But with big parameter values these methods throw IllegalArgumentException.
See test source and log below.
---------------------------------------- test.java
package test;
import javax.imageio.ImageTypeSpecifier;
import java.awt.image.BufferedImage;
public class test {
public static void main(String argv[]) {
ImageTypeSpecifier itspecifier;
itspecifier = ImageTypeSpecifier.createFromBufferedImageType
(BufferedImage.TYPE_INT_RGB);
try {
itspecifier.createBufferedImage(Integer.MAX_VALUE,
Integer.MAX_VALUE);
} catch( Throwable e ) {
System.out.println("createBufferedImage: unexpected "+ e);
}
try {
itspecifier.getSampleModel(Integer.MAX_VALUE, Integer.MAX_VALUE);
} catch( Throwable e ) {
System.out.println("getSampleModel: unexpected "+ e);
}
System.out.println("END");
}
}
----------------------------------------
% java -version
java version "1.4.0-internal"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-internal-b57)
Java HotSpot(TM) Client VM (build 1.4.0-beta-b57, mixed mode)
% java test.test
createBufferedImage: unexpected java.lang.IllegalArgumentException: Dimensions
(width=2147483647 height=2147483647) are too large
getSampleModel: unexpected java.lang.IllegalArgumentException: Dimensions
(width=2147483647 height=2147483647) are too large
END
----------------------------------------
This bug causes failures of the new JCK tests
api/javax_imageio/ImageTypeSpecifier/index.html#createBufferedImageTests
api/javax_imageio/ImageTypeSpecifier/index.html#getSampleModelTests
======================================================================