summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libraries/libAfterImage/libAfterImage.SlackBuild3
-rw-r--r--libraries/libAfterImage/libafterimage-libpng15.patch31
2 files changed, 34 insertions, 0 deletions
diff --git a/libraries/libAfterImage/libAfterImage.SlackBuild b/libraries/libAfterImage/libAfterImage.SlackBuild
index fac306d070..5f3ae72607 100644
--- a/libraries/libAfterImage/libAfterImage.SlackBuild
+++ b/libraries/libAfterImage/libAfterImage.SlackBuild
@@ -52,6 +52,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Patch for libpng16 (from Gentoo)
+patch -p0 < $CWD/libafterimage-libpng15.patch
+
# Get rid of ldconfig in Makefile
find . -name "Makefile*" -exec sed -i '/LDCONFIG/d' {} \;
diff --git a/libraries/libAfterImage/libafterimage-libpng15.patch b/libraries/libAfterImage/libafterimage-libpng15.patch
new file mode 100644
index 0000000000..44d5b94400
--- /dev/null
+++ b/libraries/libAfterImage/libafterimage-libpng15.patch
@@ -0,0 +1,31 @@
+--- export.c
++++ export.c
+@@ -496,7 +496,7 @@
+ png_ptr = png_create_write_struct( PNG_LIBPNG_VER_STRING, NULL, NULL, NULL );
+ if ( png_ptr != NULL )
+ if( (info_ptr = png_create_info_struct(png_ptr)) != NULL )
+- if( setjmp(png_ptr->jmpbuf) )
++ if( setjmp(png_jmpbuf(png_ptr)) )
+ {
+ png_destroy_info_struct(png_ptr, (png_infopp) &info_ptr);
+ info_ptr = NULL ;
+--- import.c
++++ import.c
+@@ -1251,7 +1251,7 @@
+ * the normal method of doing things with libpng). REQUIRED unless you
+ * set up your own error handlers in the png_create_read_struct() earlier.
+ */
+- if ( !setjmp (png_ptr->jmpbuf))
++ if ( !setjmp (png_jmpbuf(png_ptr)))
+ {
+ ASFlagType rgb_flags = ASStorage_RLEDiffCompress|ASStorage_32Bit ;
+
+@@ -1468,7 +1468,7 @@
+
+ static void asim_png_read_data(png_structp png_ptr, png_bytep data, png_size_t length)
+ {
+- ASImPNGReadBuffer *buf = (ASImPNGReadBuffer *)png_ptr->io_ptr;
++ ASImPNGReadBuffer *buf = (ASImPNGReadBuffer *)png_get_io_ptr(png_ptr);
+ memcpy(data, buf->buffer, length);
+ buf->buffer += length;
+ }