--- a/gdk_imlib/io-png.c 2002-03-04 18:06:29.000000000 +0100 +++ b/gdk_imlib/io-png.c 2012-04-24 23:11:43.000000000 +0200 @@ -40,7 +41,7 @@ return NULL; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_read_struct(&png_ptr, &info_ptr, NULL); return NULL; @@ -275,7 +276,7 @@ return NULL; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_read_struct(&png_ptr, &info_ptr, NULL); return NULL; @@ -440,7 +441,7 @@ return NULL; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_read_struct(&png_ptr, &info_ptr, NULL); return NULL; @@ -635,7 +636,7 @@ png_destroy_write_struct(&png_ptr, (png_infopp) NULL); return 0; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { fclose(f); png_destroy_write_struct(&png_ptr, (png_infopp) NULL); --- a/Imlib/load.c 2004-09-21 02:23:20.000000000 +0200 +++ b/Imlib/load.c 2010-03-28 16:23:13.000000000 +0200 @@ -192,7 +198,7 @@ png_destroy_read_struct(&png_ptr, NULL, NULL); return NULL; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_read_struct(&png_ptr, &info_ptr, NULL); return NULL; @@ -1619,7 +1619,7 @@ return 0; fread(buf, 1, 8, f); rewind(f); - return (int)png_check_sig(buf, 8); + return (int)!png_sig_cmp(buf, 0, 8); #else return 0; #endif --- a/Imlib/save.c 2004-09-21 02:22:59.000000000 +0200 +++ b/Imlib/save.c 2012-04-27 07:19:57.000000000 +0200 @@ -342,7 +342,7 @@ png_destroy_write_struct(&png_ptr, (png_infopp) NULL); return 0; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { fclose(f); png_destroy_write_struct(&png_ptr, (png_infopp) NULL); --- a/Imlib/utils.c 2012-04-27 07:12:19.000000000 +0200 +++ b/Imlib/utils.c 2012-04-27 07:15:39.000000000 +0200 @@ -1982,7 +1983,7 @@ return NULL; } - if (setjmp(png_ptr->jmpbuf)) + if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_read_struct(&png_ptr, &info_ptr, NULL); return NULL;