You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by da...@apache.org on 2013/10/21 19:53:57 UTC

svn commit: r1534292 - in /commons/proper/imaging/trunk/src: changes/changes.xml main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java

Author: damjan
Date: Mon Oct 21 17:53:56 2013
New Revision: 1534292

URL: http://svn.apache.org/r1534292
Log:
Make the EOI check in TiffReader.getJpegRawImageData()
only get performed when the strict flag is set,
as some images out in the wild seem to have thumbnails
without a valid EOI.

IMAGING-99 was the reason that EOI check was needed.
However testing the IMAGING-99 image with the section
commented out still works, so the EOI check wasn't 
what fixed IMAGING-99 

Jira issue key: IMAGING-108.


Modified:
    commons/proper/imaging/trunk/src/changes/changes.xml
    commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java

Modified: commons/proper/imaging/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/changes/changes.xml?rev=1534292&r1=1534291&r2=1534292&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/changes/changes.xml (original)
+++ commons/proper/imaging/trunk/src/changes/changes.xml Mon Oct 21 17:53:56 2013
@@ -46,6 +46,9 @@ The <action> type attribute can be add,u
   <body>
 
     <release version="1.0" date="TBA" description="TBA">
+      <action issue="IMAGING-108" dev="damjan" type="fix">
+        JPEG EOI marker could not be found at expected location.
+      </action>
       <action issue="IMAGING-101" dev="ggregory" type="fix" due-to="Colm O hEigeartaigh">
         GIF dimensions transposed.
       </action>

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java?rev=1534292&r1=1534291&r2=1534292&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java Mon Oct 21 17:53:56 2013
@@ -506,8 +506,9 @@ public class TiffReader extends BinaryFi
         }
         final byte data[] = byteSource.getBlock(offset, length);
         // check if the last read byte is actually the end of the image data
-        if (length < 2 ||
-                (((data[data.length - 2] & 0xff) << 8) | (data[data.length - 1] & 0xff)) != JpegConstants.EOIMarker) {
+        if (strict &&
+                (length < 2 ||
+                (((data[data.length - 2] & 0xff) << 8) | (data[data.length - 1] & 0xff)) != JpegConstants.EOIMarker)) {
             throw new ImageReadException("JPEG EOI marker could not be found at expected location");
         }
         return new JpegImageData(offset, length, data);