2013-09-26 17:14:40 +02:00

53 lines
2.1 KiB
Plaintext

$NetBSD: patch-ae,v 1.12 2011/07/02 22:19:30 dholland Exp $
- Don't use the png library to free twice.
- Fix build with recent libpng.
--- Amaya/thotlib/image/pnghandler.c.orig 2009-09-09 09:54:50.000000000 +0000
+++ Amaya/thotlib/image/pnghandler.c
@@ -128,7 +128,7 @@ static unsigned char *ReadPng (FILE *pfF
png_byte **ppbRowPointers;
unsigned char *pixels;
unsigned int i, j, passes;
- unsigned long lw, lh;
+ unsigned lw, lh;
int iBitDepth, iColorType;
double dGamma;
@@ -149,7 +149,7 @@ static unsigned char *ReadPng (FILE *pfF
png_destroy_read_struct (&png_ptr, NULL, NULL);
return NULL;
}
- if (setjmp (png_ptr->jmpbuf))
+ if (setjmp (png_jmpbuf(png_ptr)))
{
/* Free all of the memory associated with the png_ptr and info_ptr */
png_destroy_read_struct (&png_ptr, &info_ptr, (png_infopp)NULL);
@@ -175,7 +175,7 @@ static unsigned char *ReadPng (FILE *pfF
png_set_palette_to_rgb (png_ptr);
/* 8 bits / channel is needed */
if (iColorType == PNG_COLOR_TYPE_GRAY && iBitDepth < 8)
- png_set_gray_1_2_4_to_8(png_ptr);
+ png_set_expand_gray_1_2_4_to_8(png_ptr);
/* all transparency type : 1 color, indexed => alpha channel*/
if (png_get_valid (png_ptr, info_ptr,PNG_INFO_tRNS))
png_set_tRNS_to_alpha (png_ptr);
@@ -588,7 +588,7 @@ static unsigned char *ReadPng (FILE *inf
}
/* clean up after the read, and free any memory allocated */
- png_read_destroy (png_ptr, info_ptr, (png_info*) NULL);
+ //png_read_destroy (png_ptr, info_ptr, (png_info*) NULL);
/* Free all of the memory associated with the png_ptr and info_ptr */
png_destroy_read_struct (&png_ptr, &info_ptr, (png_infopp)NULL);
/* free the structures */
@@ -858,7 +858,7 @@ ThotBool SavePng (const char *filename,
png_destroy_write_struct(&png, (png_infopp) NULL);
return FALSE;
}
- if (setjmp(png->jmpbuf))
+ if (setjmp(png_jmpbuf(png)))
{
png_destroy_write_struct(&png, &pngInfo);
TtaWriteClose (pngFile);