@@ -71,6 +71,11 @@ static void gdPngErrorHandler (png_structp png_ptr, png_const_charp msg)
71
71
72
72
longjmp (jmpbuf_ptr -> jmpbuf , 1 );
73
73
}
74
+
75
+ static void gdPngWarningHandler (png_structp png_ptr , png_const_charp msg )
76
+ {
77
+ gd_error_ex (GD_WARNING , "gd-png: libpng warning: %s" , msg );
78
+ }
74
79
#endif
75
80
76
81
static void gdPngReadData (png_structp png_ptr , png_bytep data , png_size_t length )
@@ -152,7 +157,7 @@ gdImagePtr gdImageCreateFromPngCtx (gdIOCtx * infile)
152
157
}
153
158
154
159
#ifdef PNG_SETJMP_SUPPORTED
155
- png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING , & jbw , gdPngErrorHandler , NULL );
160
+ png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING , & jbw , gdPngErrorHandler , gdPngWarningHandler );
156
161
#else
157
162
png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING , NULL , NULL , NULL );
158
163
#endif
@@ -494,7 +499,7 @@ void gdImagePngCtxEx (gdImagePtr im, gdIOCtx * outfile, int level, int basefilte
494
499
#ifdef PNG_SETJMP_SUPPORTED
495
500
jmpbuf_wrapper jbw ;
496
501
497
- png_ptr = png_create_write_struct (PNG_LIBPNG_VER_STRING , & jbw , gdPngErrorHandler , NULL );
502
+ png_ptr = png_create_write_struct (PNG_LIBPNG_VER_STRING , & jbw , gdPngErrorHandler , gdPngWarningHandler );
498
503
#else
499
504
png_ptr = png_create_write_struct (PNG_LIBPNG_VER_STRING , NULL , NULL , NULL );
500
505
#endif
0 commit comments