head 1.3; access; symbols pkgsrc-2026Q1:1.3.0.122 pkgsrc-2026Q1-base:1.3 pkgsrc-2025Q4:1.3.0.120 pkgsrc-2025Q4-base:1.3 pkgsrc-2025Q3:1.3.0.118 pkgsrc-2025Q3-base:1.3 pkgsrc-2025Q2:1.3.0.116 pkgsrc-2025Q2-base:1.3 pkgsrc-2025Q1:1.3.0.114 pkgsrc-2025Q1-base:1.3 pkgsrc-2024Q4:1.3.0.112 pkgsrc-2024Q4-base:1.3 pkgsrc-2024Q3:1.3.0.110 pkgsrc-2024Q3-base:1.3 pkgsrc-2024Q2:1.3.0.108 pkgsrc-2024Q2-base:1.3 pkgsrc-2024Q1:1.3.0.106 pkgsrc-2024Q1-base:1.3 pkgsrc-2023Q4:1.3.0.104 pkgsrc-2023Q4-base:1.3 pkgsrc-2023Q3:1.3.0.102 pkgsrc-2023Q3-base:1.3 pkgsrc-2023Q2:1.3.0.100 pkgsrc-2023Q2-base:1.3 pkgsrc-2023Q1:1.3.0.98 pkgsrc-2023Q1-base:1.3 pkgsrc-2022Q4:1.3.0.96 pkgsrc-2022Q4-base:1.3 pkgsrc-2022Q3:1.3.0.94 pkgsrc-2022Q3-base:1.3 pkgsrc-2022Q2:1.3.0.92 pkgsrc-2022Q2-base:1.3 pkgsrc-2022Q1:1.3.0.90 pkgsrc-2022Q1-base:1.3 pkgsrc-2021Q4:1.3.0.88 pkgsrc-2021Q4-base:1.3 pkgsrc-2021Q3:1.3.0.86 pkgsrc-2021Q3-base:1.3 pkgsrc-2021Q2:1.3.0.84 pkgsrc-2021Q2-base:1.3 pkgsrc-2021Q1:1.3.0.82 pkgsrc-2021Q1-base:1.3 pkgsrc-2020Q4:1.3.0.80 pkgsrc-2020Q4-base:1.3 pkgsrc-2020Q3:1.3.0.78 pkgsrc-2020Q3-base:1.3 pkgsrc-2020Q2:1.3.0.74 pkgsrc-2020Q2-base:1.3 pkgsrc-2020Q1:1.3.0.54 pkgsrc-2020Q1-base:1.3 pkgsrc-2019Q4:1.3.0.76 pkgsrc-2019Q4-base:1.3 pkgsrc-2019Q3:1.3.0.72 pkgsrc-2019Q3-base:1.3 pkgsrc-2019Q2:1.3.0.70 pkgsrc-2019Q2-base:1.3 pkgsrc-2019Q1:1.3.0.68 pkgsrc-2019Q1-base:1.3 pkgsrc-2018Q4:1.3.0.66 pkgsrc-2018Q4-base:1.3 pkgsrc-2018Q3:1.3.0.64 pkgsrc-2018Q3-base:1.3 pkgsrc-2018Q2:1.3.0.62 pkgsrc-2018Q2-base:1.3 pkgsrc-2018Q1:1.3.0.60 pkgsrc-2018Q1-base:1.3 pkgsrc-2017Q4:1.3.0.58 pkgsrc-2017Q4-base:1.3 pkgsrc-2017Q3:1.3.0.56 pkgsrc-2017Q3-base:1.3 pkgsrc-2017Q2:1.3.0.52 pkgsrc-2017Q2-base:1.3 pkgsrc-2017Q1:1.3.0.50 pkgsrc-2017Q1-base:1.3 pkgsrc-2016Q4:1.3.0.48 pkgsrc-2016Q4-base:1.3 pkgsrc-2016Q3:1.3.0.46 pkgsrc-2016Q3-base:1.3 pkgsrc-2016Q2:1.3.0.44 pkgsrc-2016Q2-base:1.3 pkgsrc-2016Q1:1.3.0.42 pkgsrc-2016Q1-base:1.3 pkgsrc-2015Q4:1.3.0.40 pkgsrc-2015Q4-base:1.3 pkgsrc-2015Q3:1.3.0.38 pkgsrc-2015Q3-base:1.3 pkgsrc-2015Q2:1.3.0.36 pkgsrc-2015Q2-base:1.3 pkgsrc-2015Q1:1.3.0.34 pkgsrc-2015Q1-base:1.3 pkgsrc-2014Q4:1.3.0.32 pkgsrc-2014Q4-base:1.3 pkgsrc-2014Q3:1.3.0.30 pkgsrc-2014Q3-base:1.3 pkgsrc-2014Q2:1.3.0.28 pkgsrc-2014Q2-base:1.3 pkgsrc-2014Q1:1.3.0.26 pkgsrc-2014Q1-base:1.3 pkgsrc-2013Q4:1.3.0.24 pkgsrc-2013Q4-base:1.3 pkgsrc-2013Q3:1.3.0.22 pkgsrc-2013Q3-base:1.3 pkgsrc-2013Q2:1.3.0.20 pkgsrc-2013Q2-base:1.3 pkgsrc-2013Q1:1.3.0.18 pkgsrc-2013Q1-base:1.3 pkgsrc-2012Q4:1.3.0.16 pkgsrc-2012Q4-base:1.3 pkgsrc-2012Q3:1.3.0.14 pkgsrc-2012Q3-base:1.3 pkgsrc-2012Q2:1.3.0.12 pkgsrc-2012Q2-base:1.3 pkgsrc-2012Q1:1.3.0.10 pkgsrc-2012Q1-base:1.3 pkgsrc-2011Q4:1.3.0.8 pkgsrc-2011Q4-base:1.3 pkgsrc-2011Q3:1.3.0.6 pkgsrc-2011Q3-base:1.3 pkgsrc-2011Q2:1.3.0.4 pkgsrc-2011Q2-base:1.3 pkgsrc-2011Q1:1.3.0.2 pkgsrc-2011Q1-base:1.3 pkgsrc-2010Q4:1.2.0.42 pkgsrc-2010Q4-base:1.2 pkgsrc-2010Q3:1.2.0.40 pkgsrc-2010Q3-base:1.2 pkgsrc-2010Q2:1.2.0.38 pkgsrc-2010Q2-base:1.2 pkgsrc-2010Q1:1.2.0.36 pkgsrc-2010Q1-base:1.2 pkgsrc-2009Q4:1.2.0.34 pkgsrc-2009Q4-base:1.2 pkgsrc-2009Q3:1.2.0.32 pkgsrc-2009Q3-base:1.2 pkgsrc-2009Q2:1.2.0.30 pkgsrc-2009Q2-base:1.2 pkgsrc-2009Q1:1.2.0.28 pkgsrc-2009Q1-base:1.2 pkgsrc-2008Q4:1.2.0.26 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.2.0.24 pkgsrc-2008Q3-base:1.2 cube-native-xorg:1.2.0.22 cube-native-xorg-base:1.2 pkgsrc-2008Q2:1.2.0.20 pkgsrc-2008Q2-base:1.2 cwrapper:1.2.0.18 pkgsrc-2008Q1:1.2.0.16 pkgsrc-2008Q1-base:1.2 pkgsrc-2007Q4:1.2.0.14 pkgsrc-2007Q4-base:1.2 pkgsrc-2007Q3:1.2.0.12 pkgsrc-2007Q3-base:1.2 pkgsrc-2007Q2:1.2.0.10 pkgsrc-2007Q2-base:1.2 pkgsrc-2007Q1:1.2.0.8 pkgsrc-2007Q1-base:1.2 pkgsrc-2006Q4:1.2.0.6 pkgsrc-2006Q4-base:1.2 pkgsrc-2006Q3:1.2.0.4 pkgsrc-2006Q3-base:1.2 pkgsrc-2006Q2:1.2.0.2 pkgsrc-2006Q2-base:1.2 pkgsrc-2006Q1:1.1.0.28 pkgsrc-2006Q1-base:1.1 pkgsrc-2005Q4:1.1.0.26 pkgsrc-2005Q4-base:1.1 pkgsrc-2005Q3:1.1.0.24 pkgsrc-2005Q3-base:1.1 pkgsrc-2005Q2:1.1.0.22 pkgsrc-2005Q2-base:1.1 pkgsrc-2005Q1:1.1.0.20 pkgsrc-2005Q1-base:1.1 pkgsrc-2004Q4:1.1.0.18 pkgsrc-2004Q4-base:1.1 pkgsrc-2004Q3:1.1.0.16 pkgsrc-2004Q3-base:1.1 pkgsrc-2004Q2:1.1.0.14 pkgsrc-2004Q2-base:1.1 pkgsrc-2004Q1:1.1.0.12 pkgsrc-2004Q1-base:1.1 pkgsrc-2003Q4:1.1.0.10 pkgsrc-2003Q4-base:1.1 netbsd-1-6-1:1.1.0.6 netbsd-1-6-1-base:1.1 netbsd-1-6:1.1.0.8 netbsd-1-6-RELEASE-base:1.1 pkgviews:1.1.0.4 pkgviews-base:1.1 buildlink2:1.1.0.2 buildlink2-base:1.1 netbsd-1-5-PATCH003:1.1; locks; strict; comment @# @; 1.3 date 2011.02.07.21.28.56; author wiz; state Exp; branches; next 1.2; 1.2 date 2006.04.19.17.04.31; author wiz; state Exp; branches; next 1.1; 1.1 date 2001.08.03.09.43.18; author wiz; state Exp; branches; next ; desc @@ 1.3 log @Fix build with png-1.5. @ text @$NetBSD: patch-af,v 1.2 2006/04/19 17:04:31 wiz Exp $ Fix build with png-1.5. --- rw/readPNG.c.orig 1996-08-29 05:24:48.000000000 +0000 +++ rw/readPNG.c @@@@ -28,7 +28,7 @@@@ int TestPNG(char *file) /* gets called a LOT on the first image: brushes? */ { - char header[8]; + unsigned char header[8]; FILE *fp = fopen(file, "rb"); /* libpng requires ANSI; so do we */ if (!fp) @@@@ -46,11 +46,13 @@@@ Image * ReadPNG(char *file) { FILE *fp; - png_structp png_ptr; - png_infop info_ptr; + png_structp png_ptr = NULL; + png_infop info_ptr = NULL; int i, hasAlpha=FALSE; int width, height, level, bit_depth, npasses; Image *image = NULL; + png_colorp palette; + int num_palette; Trace((stderr, "\nGRR ReadPNG: reading file %s\n", file)); @@@@ -59,14 +61,15 @@@@ ReadPNG(char *file) return NULL; } - png_ptr = (png_structp)malloc(sizeof(png_struct)); + png_ptr = (png_structp)png_create_read_struct(PNG_LIBPNG_VER_STRING, + NULL, NULL, NULL); if (!png_ptr) { RWSetMsg("Error allocating PNG png_ptr memory"); fclose(fp); return NULL; } - info_ptr = (png_infop)malloc(sizeof(png_info)); + info_ptr = (png_infop)png_create_info_struct(png_ptr); if (!info_ptr) { RWSetMsg("Error allocating PNG info_ptr memory"); free(png_ptr); @@@@ -74,38 +77,36 @@@@ ReadPNG(char *file) return NULL; } - if (setjmp(png_ptr->jmpbuf)) { + if (setjmp(png_jmpbuf(png_ptr))) { RWSetMsg("Error setting longjmp error handler"); - png_read_destroy(png_ptr, info_ptr, (png_info *)0); - free(png_ptr); - free(info_ptr); + png_destroy_read_struct(&png_ptr, &info_ptr, NULL); fclose(fp); return NULL; } - png_info_init(info_ptr); - png_read_init(png_ptr); png_init_io(png_ptr, fp); png_read_info(png_ptr, info_ptr); - width = info_ptr->width; - height = info_ptr->height; + width = png_get_image_width(png_ptr, info_ptr); + height = png_get_image_height(png_ptr, info_ptr); Trace((stderr, "GRR ReadPNG: width = %d, height = %d\n", width, height)); - switch (info_ptr->color_type) { + + png_get_PLTE(png_ptr, info_ptr, &palette, &num_palette); + switch (png_get_color_type(png_ptr, info_ptr)) { case PNG_COLOR_TYPE_PALETTE: Trace((stderr, "GRR ReadPNG: PNG_COLOR_TYPE_PALETTE\n")); - image = ImageNewCmap(width, height, info_ptr->num_palette); - for (i = 0; i < info_ptr->num_palette; ++i) - ImageSetCmap(image, i, info_ptr->palette[i].red, - info_ptr->palette[i].green, info_ptr->palette[i].blue); + image = ImageNewCmap(width, height, num_palette); + for (i = 0; i < num_palette; ++i) + ImageSetCmap(image, i, palette[i].red, + palette[i].green, palette[i].blue); /* GRR: still need to get image data into `image' */ break; case PNG_COLOR_TYPE_RGB: Trace((stderr, "GRR ReadPNG: PNG_COLOR_TYPE_RGB\n")); - if (info_ptr->bit_depth == 16) { + if (png_get_bit_depth(png_ptr, info_ptr) == 16) { RWSetMsg("Stripping 48-bit RGB image to 24 bits"); fprintf(stderr, "ReadPNG: stripping 48-bit RGB image to 24 bits\n"); @@@@ -117,8 +118,8 @@@@ ReadPNG(char *file) case PNG_COLOR_TYPE_GRAY: /* treat grayscale as special colormap */ Trace((stderr, "GRR ReadPNG: PNG_COLOR_TYPE_GRAY\n")); - bit_depth = info_ptr->bit_depth; - if (info_ptr->bit_depth == 16) { + bit_depth = png_get_bit_depth(png_ptr, info_ptr); + if (bit_depth == 16) { RWSetMsg("Stripping 16-bit grayscale image to 8 bits"); fprintf(stderr, "ReadPNG: stripping 16-bit grayscale image to 8 bits\n"); @@@@ -157,7 +158,7 @@@@ ReadPNG(char *file) case PNG_COLOR_TYPE_RGB_ALPHA: Trace((stderr, "GRR ReadPNG: PNG_COLOR_TYPE_RGB_ALPHA\n")); - if (info_ptr->bit_depth == 16) { + if (png_get_bit_depth(png_ptr, info_ptr) == 16) { RWSetMsg("Stripping 64-bit RGBA image to 32 bits"); png_set_strip_16(png_ptr); } @@@@ -169,7 +170,7 @@@@ ReadPNG(char *file) case PNG_COLOR_TYPE_GRAY_ALPHA: Trace((stderr, "GRR ReadPNG: PNG_COLOR_TYPE_GRAY_ALPHA\n")); - if (info_ptr->bit_depth == 16) { + if (png_get_bit_depth(png_ptr, info_ptr) == 16) { RWSetMsg("Stripping 32-bit gray+alpha image to 16 bits"); png_set_strip_16(png_ptr); } @@@@ -180,20 +181,20 @@@@ ReadPNG(char *file) default: fprintf(stderr, "ReadPNG: unknown image type (%d)\n", - info_ptr->color_type); + png_get_color_type(png_ptr, info_ptr)); fflush(stderr); RWSetMsg("Unknown PNG image type"); - png_read_destroy(png_ptr, info_ptr, (png_infop)NULL); + png_destroy_read_struct(&png_ptr, &info_ptr, NULL); free(png_ptr); free(info_ptr); fclose(fp); return image; /* NULL */ } - if (info_ptr->bit_depth < 8) + if (png_get_bit_depth(png_ptr, info_ptr) < 8) png_set_packing(png_ptr); - if (info_ptr->interlace_type) + if (png_get_interlace_type(png_ptr, info_ptr)) npasses = png_set_interlace_handling(png_ptr); png_read_update_info(png_ptr, info_ptr); @@@@ -211,13 +212,13 @@@@ ReadPNG(char *file) * no easy way around it: libpng returns the image and alpha channel * interspersed, and interlaced alpha images just make matters worse */ - png_data = (png_bytep)malloc(height*info_ptr->rowbytes); + png_data = (png_bytep)malloc(height*png_get_rowbytes(png_ptr, info_ptr)); if (!png_data) { RWSetMsg("Unable to allocate temporary storage for alpha image"); fprintf(stderr, "ReadPNG error: unable to malloc png_data\n"); fflush(stderr); ImageDelete(image); - png_read_destroy(png_ptr, info_ptr, (png_infop)NULL); + png_destroy_read_struct(&png_ptr, &info_ptr, NULL); free(png_ptr); free(info_ptr); fclose(fp); @@@@ -226,11 +227,11 @@@@ ReadPNG(char *file) /* only bit depths of 8 and 16 support alpha channels */ for (i = 0; i < height; ++i) - row_pointers[i] = (png_bytep)png_data + i*info_ptr->rowbytes; + row_pointers[i] = (png_bytep)png_data + i*png_get_rowbytes(png_ptr, info_ptr); png_read_image(png_ptr, row_pointers); - if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA) { + if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA) { png_bytep png=png_data, rgb=image->data, alpha=image->maskData; for (i = 0; i < height*width; ++i) { @@@@ -258,7 +259,7 @@@@ ReadPNG(char *file) return NULL; } for (i = 0; i < height; ++i) - row_pointers[i] = (png_bytep)image->data + i*info_ptr->rowbytes; + row_pointers[i] = (png_bytep)image->data + i*png_get_rowbytes(png_ptr, info_ptr); png_read_image(png_ptr, row_pointers); @@@@ -271,7 +272,7 @@@@ ReadPNG(char *file) */ png_read_end(png_ptr, info_ptr); - png_read_destroy(png_ptr, info_ptr, (png_infop)NULL); + png_destroy_read_struct(&png_ptr, &info_ptr, NULL); free(png_ptr); free(info_ptr); fclose(fp); @ 1.2 log @Fix build after png-1.2.9nb2 update. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-af,v 1.1 2001/08/03 09:43:18 wiz Exp $ d3 3 a5 1 --- rw/readPNG.c.orig 1996-08-29 07:24:48.000000000 +0200 d7 10 a16 1 @@@@ -46,8 +46,8 @@@@ Image * d27 6 a32 1 @@@@ -59,14 +59,15 @@@@ ReadPNG(char *file) d50 1 a50 1 @@@@ -74,17 +75,13 @@@@ ReadPNG(char *file) d70 66 a135 2 @@@@ -183,7 +180,7 @@@@ ReadPNG(char *file) info_ptr->color_type); d143 20 a162 1 @@@@ -217,7 +214,7 @@@@ ReadPNG(char *file) d171 24 a194 1 @@@@ -271,7 +268,7 @@@@ ReadPNG(char *file) @ 1.1 log @Adapt png handling to latest spec. Requested in pkg/13597. @ text @d1 1 a1 1 $NetBSD$ d3 1 a3 1 --- rw/readPNG.c.orig Thu Aug 29 07:24:48 1996 d5 1 a5 1 @@@@ -46,8 +46,8 @@@@ d16 1 a16 1 @@@@ -59,14 +59,15 @@@@ d34 1 a34 1 @@@@ -74,17 +75,13 @@@@ d41 1 a41 1 png_read_destroy(png_ptr, info_ptr, (png_info *)0); d44 1 d54 27 @