[
https://issues.apache.org/jira/browse/IMAGING-130?focusedWorklogId=254332&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-254332
]
ASF GitHub Bot logged work on IMAGING-130:
------------------------------------------
Author: ASF GitHub Bot
Created on: 05/Jun/19 12:07
Start Date: 05/Jun/19 12:07
Worklog Time Spent: 10m
Work Description: mgs255 commented on pull request #46: IMAGING-130:
Ignore extra bytes when LZW decoder table is full
URL: https://github.com/apache/commons-imaging/pull/46
Per the helpful comments from @DhyanB it would appear that the correct fix
in this case is to simply ignore extra bytes during GIF decoding. Added an
animated GIF that was previously causing an IOException.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 254332)
Time Spent: 10m
Remaining Estimate: 0h
> Reading of some GIF images throws java.io.IOException: AddStringToTable:
> codes: 4096 code_size: 12
> --------------------------------------------------------------------------------------------------
>
> Key: IMAGING-130
> URL: https://issues.apache.org/jira/browse/IMAGING-130
> Project: Commons Imaging
> Issue Type: Bug
> Components: Format: GIF
> Affects Versions: 1.0-alpha1
> Environment: Oracle JRE 1.7.0_45 on Windows 7
> Oracle JRE 1.7.0_55-b13 on Debian 7.5
> Reporter: Dhyan Blum
> Priority: Major
> Fix For: Patch Needed
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Hi guys,
> for some GIF images Imaging.getBufferedImage(byte[] bytes) throws the
> following exception:
> {quote}
> java.io.IOException: AddStringToTable: codes: 4096 code_size: 12
> at
> org.apache.commons.imaging.common.mylzw.MyLzwDecompressor.addStringToTable(MyLzwDecompressor.java:112)
> at
> org.apache.commons.imaging.common.mylzw.MyLzwDecompressor.decompress(MyLzwDecompressor.java:168)
> at
> org.apache.commons.imaging.formats.gif.GifImageParser.readImageDescriptor(GifImageParser.java:388)
> at
> org.apache.commons.imaging.formats.gif.GifImageParser.readBlocks(GifImageParser.java:251)
> at
> org.apache.commons.imaging.formats.gif.GifImageParser.readFile(GifImageParser.java:455)
> at
> org.apache.commons.imaging.formats.gif.GifImageParser.readFile(GifImageParser.java:435)
> at
> org.apache.commons.imaging.formats.gif.GifImageParser.getBufferedImage(GifImageParser.java:646)
> at
> org.apache.commons.imaging.Imaging.getBufferedImage(Imaging.java:1378)
> at
> org.apache.commons.imaging.Imaging.getBufferedImage(Imaging.java:1292)
> {quote}
> I have the same problem when using ImageIO.read(). In my post on
> Stackoverflow (
> http://stackoverflow.com/questions/22259714/arrayindexoutofboundsexception-4096-while-reading-gif-file
> ) you will find an example image to reproduce the exception and a similar
> looking JDK bug report that I found using Google. Quote from the bug report:
> {quote}
> A DESCRIPTION OF THE PROBLEM :
> according to specification
> http://www.w3.org/Graphics/GIF/spec-gif89a.txt
> > There is not a requirement to send a clear code when the string table is
> > full.
> However, GIFImageReader requires the clear code when the string table is full.
> GIFImageReader violates the specification, clearly.
> In the real world, sometimes people finds such high compressed gif image.
> so you should fix this bug.
> {quote}
> I hope you will find this information helpful.
> Kind regards
> Dhyan
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)