abiword/abiword-2.8.6-png15.patch

112 lines
4.6 KiB
Diff

diff -up abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp.png15 abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp
--- abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp.png15 2012-02-27 15:39:39.258617605 -0500
+++ abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp 2012-02-27 15:48:37.830936901 -0500
@@ -191,7 +191,14 @@ UT_Error IE_ImpGraphic_BMP::_convertGrap
/* Clean Up Memory Used */
+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ int num_palette;
+ png_colorp palette;
+ png_get_PLTE(m_pPNG, m_pPNGInfo, &palette, &num_palette);
+ FREEP(palette);
+#else
FREEP(m_pPNGInfo->palette);
+#endif
DELETEP(pBB);
png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
@@ -313,7 +320,11 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P
* 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 PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ if (setjmp(png_jmpbuf(m_pPNG)))
+#else
if (setjmp(m_pPNG->jmpbuf))
+#endif
{
/* Free all of the memory associated with the png_ptr and info_ptr */
png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
@@ -332,7 +343,11 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P
UT_Error IE_ImpGraphic_BMP::Convert_BMP_Pallet(UT_ByteBuf* pBB)
{
/* Reset error handling for libpng */
+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ if (setjmp(png_jmpbuf(m_pPNG)))
+#else
if (setjmp(m_pPNG->jmpbuf))
+#endif
{
png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
return UT_ERROR;
@@ -372,7 +387,11 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P
UT_Error IE_ImpGraphic_BMP::Convert_BMP(UT_ByteBuf* pBB)
{
/* Reset error handling for libpng */
+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ if (setjmp(png_jmpbuf(m_pPNG)))
+#else
if (setjmp(m_pPNG->jmpbuf))
+#endif
{
png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
return UT_ERROR;
diff -up abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp.png15 abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp
--- abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp.png15 2012-02-27 15:31:30.178868169 -0500
+++ abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp 2012-02-27 15:36:17.795368497 -0500
@@ -79,7 +79,11 @@ bool abiword_document::garble_png( void*
png_set_strip_alpha( png_ptr );
png_set_interlace_handling( png_ptr );
png_set_bgr( png_ptr );
+#if (PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4) && defined(PNG_EASY_ACCESS_SUPPORTED)
+ rowbytes = png_get_rowbytes( png_ptr, info_ptr );
+#else
rowbytes = info_ptr->rowbytes;
+#endif
png_destroy_read_struct( &png_ptr, &info_ptr, NULL );
}
diff -up abiword-2.8.6/src/af/util/xp/ut_png.cpp.png15 abiword-2.8.6/src/af/util/xp/ut_png.cpp
--- abiword-2.8.6/src/af/util/xp/ut_png.cpp.png15 2012-02-27 15:11:18.599397989 -0500
+++ abiword-2.8.6/src/af/util/xp/ut_png.cpp 2012-02-27 15:12:20.560859433 -0500
@@ -71,7 +71,11 @@ bool UT_PNG_getDimensions(const UT_ByteB
* 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 PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ if (setjmp(png_jmpbuf(png_ptr)))
+#else
if (setjmp(png_ptr->jmpbuf))
+#endif
{
/* Free all of the memory associated with the png_ptr and info_ptr */
png_destroy_read_struct(&png_ptr, &info_ptr, static_cast<png_infopp>(NULL));
diff -up abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp.png15 abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp
--- abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp.png15 2012-02-27 15:24:23.959572417 -0500
+++ abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp 2012-02-27 15:26:42.549367943 -0500
@@ -185,7 +185,11 @@ UT_Error IE_ImpGraphic_GdkPixbuf::import
/** needed for the stejmp context */
UT_Error IE_ImpGraphic_GdkPixbuf::_png_write(GdkPixbuf * pixbuf)
{
+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ if (setjmp(png_jmpbuf(m_pPNG)))
+#else
if (setjmp(m_pPNG->jmpbuf))
+#endif
{
DELETEP(m_pPngBB);
png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
@@ -446,7 +450,11 @@ UT_Error IE_ImpGraphic_GdkPixbuf::Initia
* 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 PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
+ if (setjmp(png_jmpbuf(m_pPNG)))
+#else
if (setjmp(m_pPNG->jmpbuf))
+#endif
{
/* Free all of the memory associated with the png_ptr and info_ptr */
png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);