# HG changeset patch # User Eli Zaretskii # Date 1294083359 -7200 # Node ID 70be6bbb683b04e0389030ec88556c3ef3ae0115 # Parent d0bb1b112e734a22c6aab3b659594b9049e60462 Don't use png_jmpbuf, it doesn't work with dynamic loading. image.c (png_jmpbuf): Remove definition. (my_png_error, png_load): Don't use png_jmpbuf. diff -r d0bb1b112e73 -r 70be6bbb683b src/ChangeLog --- a/src/ChangeLog Mon Jan 03 08:13:45 2011 +0000 +++ b/src/ChangeLog Mon Jan 03 21:35:59 2011 +0200 @@ -1,3 +1,8 @@ +2011-01-03 Eli Zaretskii + + * image.c (png_jmpbuf): Remove definition. + (my_png_error, png_load): Don't use png_jmpbuf. + 2011-01-02 Eli Zaretskii * keyboard.c (Vselect_active_regions): Doc fix. (Bug#7702) diff -r d0bb1b112e73 -r 70be6bbb683b src/image.c --- a/src/image.c Mon Jan 03 08:13:45 2011 +0000 +++ b/src/image.c Mon Jan 03 21:35:59 2011 +0200 @@ -5528,12 +5528,6 @@ #endif /* HAVE_NTGUI */ -/* libpng before 1.4.0 didn't have png_jmpbuf; v1.4.0 and later - deprecate direct access to png_ptr fields. */ -#ifndef png_jmpbuf -# define png_jmpbuf(PTR) ((PTR)->jmpbuf) -#endif - /* Error and warning handlers installed when the PNG library is initialized. */ @@ -5544,7 +5538,7 @@ /* Avoid compiler warning about deprecated direct access to png_ptr's fields in libpng versions 1.4.x. */ image_error ("PNG error: %s", build_string (msg), Qnil); - longjmp (png_jmpbuf (png_ptr), 1); + longjmp (png_ptr->jmpbuf, 1); } @@ -5706,7 +5700,7 @@ /* Set error jump-back. We come back here when the PNG library detects an error. */ - if (setjmp (png_jmpbuf (png_ptr))) + if (setjmp (png_ptr->jmpbuf)) { error: if (png_ptr)