diff -Naur inkscape-0.48.1/src/extension/internal/pdfinput/svg-builder.cpp inkscape-0.48.1-mod//src/extension/internal/pdfinput/svg-builder.cpp --- inkscape-0.48.1/src/extension/internal/pdfinput/svg-builder.cpp 2010-11-06 19:47:19.806162000 +0100 +++ inkscape-0.48.1-mod//src/extension/internal/pdfinput/svg-builder.cpp 2011-02-21 13:58:59.336119558 +0100 @@ -1443,7 +1443,7 @@ return NULL; } // Set error handler - if (setjmp(png_ptr->jmpbuf)) { + if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_write_struct(&png_ptr, &info_ptr); return NULL; } diff -Naur inkscape-0.48.1/src/helper/png-write.cpp inkscape-0.48.1-mod//src/helper/png-write.cpp --- inkscape-0.48.1/src/helper/png-write.cpp 2010-07-13 05:48:40.691600000 +0200 +++ inkscape-0.48.1-mod//src/helper/png-write.cpp 2011-02-21 13:58:59.336119558 +0100 @@ -165,7 +165,7 @@ /* Set error handling. REQUIRED if you aren't supplying your own * error hadnling functions in the png_create_write_struct() call. */ - if (setjmp(png_ptr->jmpbuf)) { + if (setjmp(png_jmpbuf(png_ptr))) { /* If we get here, we had a problem reading the file */ fclose(fp); png_destroy_write_struct(&png_ptr, &info_ptr); diff -Naur inkscape-0.48.1/src/sp-image.cpp inkscape-0.48.1-mod//src/sp-image.cpp --- inkscape-0.48.1/src/sp-image.cpp 2010-07-13 05:48:40.691600000 +0200 +++ inkscape-0.48.1-mod//src/sp-image.cpp 2011-02-21 13:59:13.786040155 +0100 @@ -386,9 +386,13 @@ #if defined(PNG_iCCP_SUPPORTED) { - char* name = 0; + png_charp name = 0; int compression_type = 0; - char* profile = 0; +#if (PNG_LIBPNG_VER < 10500) + png_charp profile = 0; +#else + png_bytep profile = 0; +#endif png_uint_32 proflen = 0; if ( png_get_iCCP(pngPtr, infoPtr, &name, &compression_type, &profile, &proflen) ) { // g_message("Found an iCCP chunk named [%s] with %d bytes and comp %d", name, proflen, compression_type);