mapnik/mapnik — pull request #1245 by simonsonc (2012-06-07 03:17:42+00:00)
Title: Catch and throw PNG exceptions - fixes #1213

The png library uses setjmp/longjmp to throw exceptions when reading. If this
is not set up, the png library calls abort(). This change handles the errors
and throws a C++ exception instead.

This issue was found by testing images from pngsuite at
http://www.schaik.com/pngsuite/. These images are included and a unit test was
added to test both images that should be successful and images that should
throw an exception.