Gavin Shiels created IMAGING-140:
------------------------------------
Summary: ExifReWriter always writes EXIF segment before JFIF
segment
Key: IMAGING-140
URL: https://issues.apache.org/jira/browse/IMAGING-140
Project: Commons Imaging
Issue Type: Bug
Components: Format: JPEG
Affects Versions: 1.x, 0.97, 0.94-incubator
Environment: All
Reporter: Gavin Shiels
ExifRewriter.writeSegmentsReplacingExif () always writes the EXIF segment as
the first segment written to the output stream even when there is JFIF segment
present.
The code checks for the existence of the JFIF segment and it looks like the
intention was then to insert the EXIF segment at index 1 but it is instead
always inserted at index 0, the variable 'index' is not used after being set to
1.
'index' should be passed as the first parameter to the segments.add() call.
/* ----------------------------------------------------------------------- */
int index = 0;
JFIFPieceSegment firstSegment = (JFIFPieceSegment) segments.get(index);
if (firstSegment.marker == JFIFMarker)
index = 1;
segments.add(0, new JFIFPieceSegmentExif(JPEG_APP1_Marker,
markerBytes, markerLengthBytes, newBytes));
/* ----------------------------------------------------------------------- */
--
This message was sent by Atlassian JIRA
(v6.2#6252)