After update libpng to version 1.5.5, aftertep 2.2.9, emerge don't report any error, but try to install broken package, but i try to make patch for libAfterImage --- AfterStep-2.2.9/libAfterImage/import.c.old 2011-10-06 13:43:28.000000000 +0200 +++ AfterStep-2.2.9/libAfterImage/import.c 2011-10-06 13:44:26.000000000 +0200 @@ -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; } --- AfterStep-2.2.9/libAfterImage/export.c.old 2011-10-06 13:45:05.000000000 +0200 +++ AfterStep-2.2.9/libAfterImage/export.c 2011-10-06 13:45:51.000000000 +0200 @@ -483,7 +483,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 ; Reproducible: Always Steps to Reproduce: 1. emerge afterstep
Created attachment 288945 [details] patch for afterstep-2.2.9 (fix libpng1.5.5 problem)
+ 06 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> afterstep-2.2.9.ebuild, + +files/afterstep-2.2.9-libpng15.patch: + Fix building with libpng15 wrt #385851 by "Zosiek" The patch was already in Portage media-libs/libafterimage Bug 253259 should get fixed...