png file example that breaks ImageFile

Eddie Bishop <[email protected]>
Newsgroups gmane.comp.python.image
Message-ID <[email protected]>
Hello,

The PNG file which I have uploaded to http://i.imgur.com/GpJs3.png doesn't
work as expected with the example code given for the ImageFile class found
at http://www.pythonware.com/library/pil/handbook/imagefile.htm . The docs
say that feed() may raise an IOError exception, but a zlib error is raised
instead. Note that this image does work fine if the whole file is passed to
feed() in one single call.

I have python 2.7.1, using PIL 1.1.7.

Here is the python shell output:

$ python2
Python 2.7.1 (r271:86832, Feb 21 2011, 01:28:26)
[GCC 4.5.2 20110127 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ImageFile
>>>
>>> fp =
open('/srv/media/media/albums/60/47/566e-1c9c-41ac-9914-b63724f01693/6047566e-1c9c-41ac-9914-b63724f01693.png',
"rb")
>>>
>>> p = ImageFile.Parser()
>>>
>>> while 1:
...     s = fp.read(1024)
...     if not s:
...         break
...     p.feed(s)
...
Traceback (most recent call last):
  File "<stdin>", line 5, in <module>
  File "/usr/lib/python2.7/site-packages/PIL/ImageFile.py", line 402, in
feed
    im = Image.open(fp)
  File "/usr/lib/python2.7/site-packages/PIL/Image.py", line 1965, in open
    return factory(fp, filename)
  File "/usr/lib/python2.7/site-packages/PIL/ImageFile.py", line 91, in
__init__
    self._open()
  File "/usr/lib/python2.7/site-packages/PIL/PngImagePlugin.py", line 331,
in _open
    s = self.png.call(cid, pos, len)
  File "/usr/lib/python2.7/site-packages/PIL/PngImagePlugin.py", line 115,
in call
    return getattr(self, "chunk_" + cid)(pos, len)
  File "/usr/lib/python2.7/site-packages/PIL/PngImagePlugin.py", line 296,
in chunk_zTXt
    self.im_info[k] = self.im_text[k] = zlib.decompress(v[1:])
zlib.error: Error -5 while decompressing data: incomplete or truncated
stream




-Eddie Bishop

_______________________________________________
Image-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/image-sig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.