From 8a1765f57d234b2b9c17f353d4f6590a7d3510c4 Mon Sep 17 00:00:00 2001 From: wiz Date: Fri, 14 Jan 2011 11:54:04 +0000 Subject: Fix build with png-1.5. --- x11/wxGTK28/distinfo | 4 ++-- x11/wxGTK28/patches/patch-ba | 43 ++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 42 insertions(+), 5 deletions(-) (limited to 'x11/wxGTK28') diff --git a/x11/wxGTK28/distinfo b/x11/wxGTK28/distinfo index 794d0e516ad..e32dbff4dd6 100644 --- a/x11/wxGTK28/distinfo +++ b/x11/wxGTK28/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.9 2010/06/13 22:45:54 wiz Exp $ +$NetBSD: distinfo,v 1.10 2011/01/14 11:54:04 wiz Exp $ SHA1 (wxGTK-2.8.10-libtool.diff.bz2) = 62ff30c26efdd73252bed2d07b82a9b9d3ef890f RMD160 (wxGTK-2.8.10-libtool.diff.bz2) = 64e1c32caa4bd6a0503bce4764e3ddc1cba68f8a @@ -10,7 +10,7 @@ SHA1 (patch-aa) = fbcfd8e6abaabab393f24dc368c1c6b8447a75be SHA1 (patch-ab) = 82960daef0616824718f3c04929871aeb0e258a2 SHA1 (patch-ac) = 50cf253797f2dee8b9dab08d138d0070e25e7a8c SHA1 (patch-ad) = b07a55257347633edb8997201c82f83619d1d650 -SHA1 (patch-ba) = 367553169526acd6c1c938b0f57c5b6a444d2b10 +SHA1 (patch-ba) = b6b07cbed81cccb2619f671346e9cfe78bda83d3 SHA1 (patch-bb) = 27855267bd13a1db65cafc96eaba1ef7f71dc65f SHA1 (patch-ca) = 7da457e1dbafb42766aa87c1ca9baca675e211ed SHA1 (patch-cb) = 8e3ca3df50ef678656787201317a2d2b385c861e diff --git a/x11/wxGTK28/patches/patch-ba b/x11/wxGTK28/patches/patch-ba index b52972bf195..c89c79a002f 100644 --- a/x11/wxGTK28/patches/patch-ba +++ b/x11/wxGTK28/patches/patch-ba @@ -1,9 +1,20 @@ -$NetBSD: patch-ba,v 1.2 2010/02/16 17:38:14 taca Exp $ +$NetBSD: patch-ba,v 1.3 2011/01/14 11:54:04 wiz Exp $ -deal with CVE-2009-2369. +deal with CVE-2009-2369. (chunks 2 + 3) ---- src/common/imagpng.cpp.orig 2009-03-06 13:17:40.000000000 +0100 +Fix build with png-1.5. (chunks 1 + 4) + +--- src/common/imagpng.cpp.orig 2009-03-06 12:17:40.000000000 +0000 +++ src/common/imagpng.cpp +@@ -529,7 +529,7 @@ wxPNGHandler::LoadFile(wxImage *image, + png_structp png_ptr = png_create_read_struct + ( + PNG_LIBPNG_VER_STRING, +- (voidp) NULL, ++ NULL, + wx_png_error, + wx_png_warning + ); @@ -568,18 +568,16 @@ wxPNGHandler::LoadFile(wxImage *image, if (!image->Ok()) goto error; @@ -26,3 +37,29 @@ deal with CVE-2009-2369. } png_read_image( png_ptr, lines ); +@@ -588,16 +586,20 @@ wxPNGHandler::LoadFile(wxImage *image, + #if wxUSE_PALETTE + if (color_type == PNG_COLOR_TYPE_PALETTE) + { +- const size_t ncolors = info_ptr->num_palette; ++ png_colorp palette; ++ int ncolors; ++ ++ png_get_PLTE( png_ptr, info_ptr, &palette, &ncolors); ++ + unsigned char* r = new unsigned char[ncolors]; + unsigned char* g = new unsigned char[ncolors]; + unsigned char* b = new unsigned char[ncolors]; + +- for (size_t j = 0; j < ncolors; j++) ++ for (int j = 0; j < ncolors; j++) + { +- r[j] = info_ptr->palette[j].red; +- g[j] = info_ptr->palette[j].green; +- b[j] = info_ptr->palette[j].blue; ++ r[j] = palette[j].red; ++ g[j] = palette[j].green; ++ b[j] = palette[j].blue; + } + + image->SetPalette(wxPalette(ncolors, r, g, b)); -- cgit v1.2.3