diff --git a/program/src/pngsize.c b/program/src/pngsize.c
index 18e89c53300fcf639d44d896899797f7a2823db0..b937a245dac028b9caf54285d4d25801e750ba0d 100644 (file)
--- a/program/src/pngsize.c
+++ b/program/src/pngsize.c
/*****************************************************************************
- * RRDtool 1.2.23 Copyright by Tobi Oetiker, 1997-2007
+ * RRDtool 1.4.3 Copyright by Tobi Oetiker, 1997-2010
*****************************************************************************
* pngsize.c determine the size of a PNG image
*****************************************************************************/
/* this is to make compile on aix work since they seem to define jmpbuf
to be _jmpbuf which breaks compilation */
+#ifndef png_jmpbuf
+#ifdef PNG_SETJMP_SUPPORTED
+# define png_jmpbuf(png_ptr) ((png_ptr)->PNG_jmpbuf)
+#else
#ifdef jmpbuf
#undef jmpbuf
+#endif
+# define png_jmpbuf(png_ptr) ((png_ptr)->jmpbuf)
+#endif
#endif
- if (setjmp(png_read_ptr->jmpbuf)) {
+ if (setjmp(png_jmpbuf(png_read_ptr))) {
png_destroy_read_struct(&png_read_ptr, &info_ptr, (png_infopp) NULL);
return 0;
}