diff options
Diffstat (limited to 'main/gdk-pixbuf/gdk-pixbuf-libpng15.patch')
-rw-r--r-- | main/gdk-pixbuf/gdk-pixbuf-libpng15.patch | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/main/gdk-pixbuf/gdk-pixbuf-libpng15.patch b/main/gdk-pixbuf/gdk-pixbuf-libpng15.patch new file mode 100644 index 0000000000..424938e815 --- /dev/null +++ b/main/gdk-pixbuf/gdk-pixbuf-libpng15.patch @@ -0,0 +1,67 @@ +From e6a5b2472a4a5d554b587dfcb798b95035caa6fd Mon Sep 17 00:00:00 2001 +From: Maarten Bosmans <mkbosmans@gmail.com> +Date: Mon, 24 Jan 2011 10:39:22 +0000 +Subject: Use png_jmpbuf macro + +This makes the png loader compatible with libpng 1.5 +--- +diff --git a/gdk-pixbuf/io-png.c b/gdk-pixbuf/io-png.c +index 79c81fd..76f3304 100644 +--- a/gdk-pixbuf/io-png.c ++++ b/gdk-pixbuf/io-png.c +@@ -183,7 +183,7 @@ png_simple_error_callback(png_structp png_save_ptr, + error_msg); + } + +- longjmp (png_save_ptr->jmpbuf, 1); ++ longjmp (png_jmpbuf(png_save_ptr), 1); + } + + static void +@@ -287,7 +287,7 @@ gdk_pixbuf__png_image_load (FILE *f, GError **error) + return NULL; + } + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf(png_ptr))) { + g_free (rows); + + if (pixbuf) +@@ -459,7 +459,7 @@ gdk_pixbuf__png_image_begin_load (GdkPixbufModuleSizeFunc size_func, + return NULL; + } + +- if (setjmp (lc->png_read_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf(lc->png_read_ptr))) { + if (lc->png_info_ptr) + png_destroy_read_struct(&lc->png_read_ptr, NULL, NULL); + g_free(lc); +@@ -531,7 +531,7 @@ gdk_pixbuf__png_image_load_increment(gpointer context, + lc->error = error; + + /* Invokes our callbacks as needed */ +- if (setjmp (lc->png_read_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf(lc->png_read_ptr))) { + lc->error = NULL; + return FALSE; + } else { +@@ -769,7 +769,7 @@ png_error_callback(png_structp png_read_ptr, + error_msg); + } + +- longjmp (png_read_ptr->jmpbuf, 1); ++ longjmp (png_jmpbuf(png_read_ptr), 1); + } + + static void +@@ -978,7 +978,7 @@ static gboolean real_save_png (GdkPixbuf *pixbuf, + success = FALSE; + goto cleanup; + } +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf(png_ptr))) { + success = FALSE; + goto cleanup; + } +-- +cgit v0.9 |