This fix does a couple of things

1) AffineTransformOp.createCompatibleDestImage() and 
AffineTransformOp.createCompatibleDestRaster() now specify that they will throw 
RasterFormatException if the transformed size is too large. They were already 
getting an exception.
Note that inside the JDK only the imaging API implementation itself uses these 
APIs and I suspect they are rarely used by applications.

2) AffineTransformOp.filter(src, null) will not throw an exception if it cannot 
create a destination image or raster of the required size and instead will use 
the source image size. This means applications which simply filter() will not 
need to carefully examine the transform. Sophisticated applications which want 
to do this can use the above "create*" methods to explicitly create the 
destination to find this out. 

So some inconsistency but I think it is a user-friendly trade-off.

A CSR will be needed but I want to get past initial review first.

-------------

Commit messages:
 - 4690476

Changes: https://git.openjdk.org/jdk/pull/27707/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27707&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-4690476
  Stats: 141 lines in 2 files changed: 131 ins; 1 del; 9 mod
  Patch: https://git.openjdk.org/jdk/pull/27707.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/27707/head:pull/27707

PR: https://git.openjdk.org/jdk/pull/27707

Reply via email to