From 00e859a5c9d76375cc15713eb11507075e60462d Mon Sep 17 00:00:00 2001 From: wiz Date: Tue, 5 Apr 2011 11:27:28 +0000 Subject: Fix build with png-1.5. --- devel/teem/distinfo | 4 ++-- devel/teem/patches/patch-ad | 31 ++++++++++++++++++++++++++- games/ufoai/distinfo | 4 ++-- games/ufoai/patches/patch-ab | 51 +++++++++++++++++++++++++++++++++++++++++++- 4 files changed, 84 insertions(+), 6 deletions(-) diff --git a/devel/teem/distinfo b/devel/teem/distinfo index 56cbda2375c..b768be2787d 100644 --- a/devel/teem/distinfo +++ b/devel/teem/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.5 2010/06/13 22:44:10 wiz Exp $ +$NetBSD: distinfo,v 1.6 2011/04/05 11:27:28 wiz Exp $ SHA1 (teem-1.8.0-src.tar.gz) = fd57c40136d877d33cb45b2afc54a95564e67225 RMD160 (teem-1.8.0-src.tar.gz) = 7154b1a7b12a08f7267017e213794673f6192827 @@ -6,4 +6,4 @@ Size (teem-1.8.0-src.tar.gz) = 1127914 bytes SHA1 (patch-aa) = ebb0d5be710416276fbc028ee8e635b669eaa378 SHA1 (patch-ab) = 0dbbe8290711e18d4c1312a452aaee19a13b5a04 SHA1 (patch-ac) = 5e3f9a3fcf2c3807025fec65f5bb034691ba9457 -SHA1 (patch-ad) = 8a342c486f4bbbce1ac7c54ded5ebcf7eca63bdd +SHA1 (patch-ad) = f72fbafa21ca882ec17afb9370395a6ee2a424c4 diff --git a/devel/teem/patches/patch-ad b/devel/teem/patches/patch-ad index 9ced11c3e9b..2bfedafb16b 100644 --- a/devel/teem/patches/patch-ad +++ b/devel/teem/patches/patch-ad @@ -1,7 +1,27 @@ -$NetBSD: patch-ad,v 1.1 2010/06/13 22:44:11 wiz Exp $ +$NetBSD: patch-ad,v 1.2 2011/04/05 11:27:29 wiz Exp $ + +Fix build with png-1.5. --- src/nrrd/formatPNG.c.orig 2005-03-01 22:27:40.000000000 +0000 +++ src/nrrd/formatPNG.c +@@ -116,7 +116,7 @@ _nrrdErrorHandlerPNG (png_structp png, p + sprintf(err, "%s: PNG error: %s", me, message); + biffAdd(NRRD, err); + /* longjmp back to the setjmp, return 1 */ +- longjmp(png->jmpbuf, 1); ++ longjmp(png_jmpbuf(png), 1); + } + + void +@@ -192,7 +192,7 @@ _nrrdFormatPNG_read(FILE *file, Nrrd *nr + biffAdd(NRRD, err); return 1; + } + /* set up png style error handling */ +- if (setjmp(png->jmpbuf)) { ++ if (setjmp(png_jmpbuf(png))) { + /* the error is reported inside the handler, + but we still need to clean up and return */ + png_destroy_read_struct(&png, &info, NULL); @@ -216,7 +216,7 @@ _nrrdFormatPNG_read(FILE *file, Nrrd *nr png_set_palette_to_rgb(png); /* expand grayscale images to 8 bits from 1, 2, or 4 bits */ @@ -11,3 +31,12 @@ $NetBSD: patch-ad,v 1.1 2010/06/13 22:44:11 wiz Exp $ /* expand paletted or rgb images with transparency to full alpha channels so the data will be available as rgba quartets */ if (png_get_valid(png, info, PNG_INFO_tRNS)) +@@ -409,7 +409,7 @@ _nrrdFormatPNG_write(FILE *file, const N + biffAdd(NRRD, err); return 1; + } + /* set up error png style error handling */ +- if (setjmp(png->jmpbuf)) ++ if (setjmp(png_jmpbuf(png))) + { + /* the error is reported inside the error handler, + but we still need to clean up an return with an error */ diff --git a/games/ufoai/distinfo b/games/ufoai/distinfo index a34439d7bd9..b836f1a59b6 100644 --- a/games/ufoai/distinfo +++ b/games/ufoai/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.4 2010/06/13 22:44:24 wiz Exp $ +$NetBSD: distinfo,v 1.5 2011/04/05 11:32:46 wiz Exp $ SHA1 (ufoai-2.2.1-data.tar) = eb071333478bd6860179e12d8655301980f87d60 RMD160 (ufoai-2.2.1-data.tar) = af91dd473f59c73e705181759059bd37ba215f62 @@ -10,5 +10,5 @@ SHA1 (ufoai-2.2.1-source.tar.bz2) = 6ad1b8c357fdbbe9a31839b3bf8de46ad17a40eb RMD160 (ufoai-2.2.1-source.tar.bz2) = 980405a5d38bcbb5ae2cea4e25c54374c7dd8e99 Size (ufoai-2.2.1-source.tar.bz2) = 7640531 bytes SHA1 (patch-aa) = 2b196e8d94a1848b42212f32c90a259e56440382 -SHA1 (patch-ab) = 3700077a35ba84648b52449be047b39f1274c9ee +SHA1 (patch-ab) = 0d02436454b3dbd85b8027fcf321714be8bf05a2 SHA1 (patch-ac) = 29069a06c2442060734e32162a9b561c19be8739 diff --git a/games/ufoai/patches/patch-ab b/games/ufoai/patches/patch-ab index dd63ad87264..24f7e559ae5 100644 --- a/games/ufoai/patches/patch-ab +++ b/games/ufoai/patches/patch-ab @@ -1,4 +1,8 @@ -$NetBSD: patch-ab,v 1.2 2010/06/13 22:44:24 wiz Exp $ +$NetBSD: patch-ab,v 1.3 2011/04/05 11:32:46 wiz Exp $ + +Fix build with png-1.5. + +Last chunk: ? --- src/renderer/r_image.c.orig 2008-04-25 16:15:02.000000000 +0000 +++ src/renderer/r_image.c @@ -11,6 +15,51 @@ $NetBSD: patch-ab,v 1.2 2010/06/13 22:44:24 wiz Exp $ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) png_set_tRNS_to_alpha(png_ptr); +@@ -268,32 +268,32 @@ static int R_LoadPNG (const char *name, + row_pointers = png_get_rows(png_ptr, info_ptr); + rowptr = 0; + +- img = VID_TagAlloc(vid_imagePool, info_ptr->width * info_ptr->height * 4, 0); ++ img = VID_TagAlloc(vid_imagePool, png_get_image_width(png_ptr, info_ptr) * png_get_image_height(png_ptr, info_ptr) * 4, 0); + if (pic) + *pic = img; + +- if (info_ptr->channels == 4) { +- for (i = 0; i < info_ptr->height; i++) { +- memcpy (img + rowptr, row_pointers[i], info_ptr->rowbytes); +- rowptr += info_ptr->rowbytes; ++ if (png_get_channels(png_ptr, info_ptr) == 4) { ++ for (i = 0; i < png_get_image_height(png_ptr, info_ptr); i++) { ++ memcpy (img + rowptr, row_pointers[i], png_get_rowbytes(png_ptr, info_ptr)); ++ rowptr += png_get_rowbytes(png_ptr, info_ptr); + } + } else { + uint32_t j; + +- memset(img, 255, info_ptr->width * info_ptr->height * 4); +- for (rowptr = 0, i = 0; i < info_ptr->height; i++) { +- for (j = 0; j < info_ptr->rowbytes; j += info_ptr->channels) { +- memcpy(img + rowptr, row_pointers[i] + j, info_ptr->channels); ++ memset(img, 255, png_get_image_width(png_ptr, info_ptr) * png_get_image_height(png_ptr, info_ptr) * 4); ++ for (rowptr = 0, i = 0; i < png_get_image_height(png_ptr, info_ptr); i++) { ++ for (j = 0; j < png_get_rowbytes(png_ptr, info_ptr); j += png_get_channels(png_ptr, info_ptr)) { ++ memcpy(img + rowptr, row_pointers[i] + j, png_get_channels(png_ptr, info_ptr)); + rowptr += 4; + } + } + } + + if (width) +- *width = info_ptr->width; ++ *width = png_get_image_width(png_ptr, info_ptr); + if (height) +- *height = info_ptr->height; +- samples = info_ptr->channels; ++ *height = png_get_image_height(png_ptr, info_ptr); ++ samples = png_get_channels(png_ptr, info_ptr); + + png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); + @@ -651,17 +651,6 @@ static void jpg_skip_input_data (j_decom cinfo->src->bytes_in_buffer -= (size_t) num_bytes; } -- cgit v1.2.3