﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
24544	core.files.images.get_image_dimensions broken on some valid PNG images	artscoop	nobody	"Hi,
second time I find a bug in the same function. Here, the function failed (exception raised and not caught) on a valid PNG file (this image: https://mega.co.nz/#!W0tXzBAK!iLprbqkVWFAzfcn2GUDRGHiH8Pxyi4DxCQi580shcec).
The error raised by PIL is a `struct.error`, which should be expected but is not caught by the chunk feeder loop.

The feeder knows this

{{{
            except zlib.error as e:
                # ignore zlib complaining on truncated stream, just feed more
                # data to parser (ticket #19457).
                if e.args[0].startswith(""Error -5""):
                    pass
                else:
                    raise
}}}

but does not know this

{{{
from struct import error
...

except struct.error:
    pass
}}}

when you catch the proper exception, the file header fed to the parser becomes correct starting at offset 9214.
The good news is, it does not need tests."	Cleanup/optimization	closed	File uploads/storage	1.7	Normal	fixed	PIL		Accepted	1	0	0	1	0	0
