Repository: commons-imaging Updated Branches: refs/heads/master 51880b788 -> 0a61492fd
IMAGING-214: avoid code execution unless/until it is needed Project: http://git-wip-us.apache.org/repos/asf/commons-imaging/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-imaging/commit/0a61492f Tree: http://git-wip-us.apache.org/repos/asf/commons-imaging/tree/0a61492f Diff: http://git-wip-us.apache.org/repos/asf/commons-imaging/diff/0a61492f Branch: refs/heads/master Commit: 0a61492fda0e82b0c01602e689f238051f9106ee Parents: 51880b7 Author: Dave Brosius <dbros...@mebigfatguy.com> Authored: Mon Jan 1 19:31:22 2018 -0500 Committer: Dave Brosius <dbros...@mebigfatguy.com> Committed: Mon Jan 1 19:31:22 2018 -0500 ---------------------------------------------------------------------- .../apache/commons/imaging/formats/bmp/BmpImageParser.java | 3 +-- .../apache/commons/imaging/formats/ico/IcoImageParser.java | 2 +- .../apache/commons/imaging/formats/png/PngImageParser.java | 3 +-- .../apache/commons/imaging/formats/pnm/PnmImageParser.java | 4 ++-- .../commons/imaging/formats/tiff/TiffImageParser.java | 9 +++++---- 5 files changed, 10 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-imaging/blob/0a61492f/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java b/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java index 1bb1b51..1fdff5d 100644 --- a/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java @@ -394,11 +394,10 @@ public class BmpImageParser extends ImageParser { + ((colorTable == null) ? "null" : Integer.toString(colorTable.length))); } - final int pixelCount = bhi.width * bhi.height; - int imageLineLength = (((bhi.bitsPerPixel) * bhi.width) + 7) / 8; if (verbose) { + final int pixelCount = bhi.width * bhi.height; // this.debugNumber("Total BitsPerPixel", // (ExtraBitsPerPixel + bhi.BitsPerPixel), 4); // this.debugNumber("Total Bit Per Line", http://git-wip-us.apache.org/repos/asf/commons-imaging/blob/0a61492f/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java b/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java index 24d1066..238f6d3 100644 --- a/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java @@ -647,8 +647,8 @@ public class IcoImageParser extends ImageParser { final PaletteFactory paletteFactory = new PaletteFactory(); final SimplePalette palette = paletteFactory.makeExactRgbPaletteSimple(src, 256); final int bitCount; - final boolean hasTransparency = paletteFactory.hasTransparency(src); if (palette == null) { + final boolean hasTransparency = paletteFactory.hasTransparency(src); if (hasTransparency) { bitCount = 32; } else { http://git-wip-us.apache.org/repos/asf/commons-imaging/blob/0a61492f/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java b/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java index a1a9ab4..3f703b8 100644 --- a/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java @@ -444,8 +444,6 @@ public class PngImageParser extends ImageParser { physicalHeightInch = (float) (height / (pngChunkpHYs.pixelsPerUnitYAxis * metersPerInch)); } - final String formatDetails = "Png"; - boolean usesPalette = false; final List<PngChunk> PLTEs = filterChunks(chunks, ChunkType.PLTE); @@ -468,6 +466,7 @@ public class PngImageParser extends ImageParser { throw new ImageReadException("Png: Unknown ColorType: " + pngChunkIHDR.pngColorType); } + final String formatDetails = "Png"; final ImageInfo.CompressionAlgorithm compressionAlgorithm = ImageInfo.CompressionAlgorithm.PNG_FILTER; return new PngImageInfo(formatDetails, bitsPerPixel, comments, http://git-wip-us.apache.org/repos/asf/commons-imaging/blob/0a61492f/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java b/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java index 5528d84..0889363 100644 --- a/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java @@ -321,8 +321,7 @@ public class PnmImageParser extends ImageParser { throws ImageWriteException, IOException { PnmWriter writer = null; boolean useRawbits = true; - final boolean hasAlpha = new PaletteFactory().hasTransparency(src); - + if (params != null) { final Object useRawbitsParam = params.get(PARAM_KEY_PNM_RAWBITS); if (useRawbitsParam != null) { @@ -346,6 +345,7 @@ public class PnmImageParser extends ImageParser { } if (writer == null) { + final boolean hasAlpha = new PaletteFactory().hasTransparency(src); if (hasAlpha) { writer = new PamWriter(); } else { http://git-wip-us.apache.org/repos/asf/commons-imaging/blob/0a61492f/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java index ada294c..2647493 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java @@ -187,10 +187,6 @@ public class TiffImageParser extends ImageParser { break; } - final TiffField xResolutionField = directory.findField( - TiffTagConstants.TIFF_TAG_XRESOLUTION); - final TiffField yResolutionField = directory.findField( - TiffTagConstants.TIFF_TAG_YRESOLUTION); int physicalWidthDpi = -1; float physicalWidthInch = -1; @@ -198,6 +194,11 @@ public class TiffImageParser extends ImageParser { float physicalHeightInch = -1; if (unitsPerInch > 0) { + final TiffField xResolutionField = directory.findField( + TiffTagConstants.TIFF_TAG_XRESOLUTION); + final TiffField yResolutionField = directory.findField( + TiffTagConstants.TIFF_TAG_YRESOLUTION); + if ((xResolutionField != null) && (xResolutionField.getValue() != null)) { final double xResolutionPixelsPerUnit = xResolutionField.getDoubleValue();