summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2007-10-06 22:57:42 +0000
committerMike Frysinger <vapier@gentoo.org>2007-10-06 22:57:42 +0000
commitda20b26427f037a0da1698da4ec37d9008f86234 (patch)
treeda4fcf0bc2b660a3c9dc8a31d427a29273d344ab /media-libs/libpng
parentold (diff)
downloadgentoo-2-da20b26427f037a0da1698da4ec37d9008f86234.tar.gz
gentoo-2-da20b26427f037a0da1698da4ec37d9008f86234.tar.bz2
gentoo-2-da20b26427f037a0da1698da4ec37d9008f86234.zip
Update the memory corruption fix some more #194864 by Peter Henriksson.
(Portage version: 2.1.3.11)
Diffstat (limited to 'media-libs/libpng')
-rw-r--r--media-libs/libpng/ChangeLog8
-rw-r--r--media-libs/libpng/files/digest-libpng-1.2.21-r26
-rw-r--r--media-libs/libpng/files/libpng-1.2.21-off-by-one.patch5
-rw-r--r--media-libs/libpng/libpng-1.2.21-r2.ebuild41
4 files changed, 57 insertions, 3 deletions
diff --git a/media-libs/libpng/ChangeLog b/media-libs/libpng/ChangeLog
index c21e344c6f05..2877d584fc00 100644
--- a/media-libs/libpng/ChangeLog
+++ b/media-libs/libpng/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-libs/libpng
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/libpng/ChangeLog,v 1.152 2007/10/06 14:05:06 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libpng/ChangeLog,v 1.153 2007/10/06 22:57:41 vapier Exp $
+
+*libpng-1.2.21-r2 (06 Oct 2007)
+
+ 06 Oct 2007; Mike Frysinger <vapier@gentoo.org>
+ files/libpng-1.2.21-off-by-one.patch, +libpng-1.2.21-r2.ebuild:
+ Update the memory corruption fix some more #194864 by Peter Henriksson.
*libpng-1.2.21-r1 (06 Oct 2007)
diff --git a/media-libs/libpng/files/digest-libpng-1.2.21-r2 b/media-libs/libpng/files/digest-libpng-1.2.21-r2
new file mode 100644
index 000000000000..5ef3058d09bf
--- /dev/null
+++ b/media-libs/libpng/files/digest-libpng-1.2.21-r2
@@ -0,0 +1,6 @@
+MD5 b0cda5e10e8165e5f151e674e1a67983 libpng-1.2.21.tar.bz2 614352
+RMD160 2738cb7cebe19184a0ffefe31c49e570b0791049 libpng-1.2.21.tar.bz2 614352
+SHA256 3b4f186e5dd1e683178d58d45db16f4fd9203f6518037ff28b4505ec35246953 libpng-1.2.21.tar.bz2 614352
+MD5 1518ec4b873f2c61a7d32ad867b67b17 libpng-manual.txt 128284
+RMD160 f019974f931327e6d9d332d306e07dce71ff031b libpng-manual.txt 128284
+SHA256 0cc3a25643024807672e5df255332cb63c902cea333246f4a5ab48c682c3297a libpng-manual.txt 128284
diff --git a/media-libs/libpng/files/libpng-1.2.21-off-by-one.patch b/media-libs/libpng/files/libpng-1.2.21-off-by-one.patch
index 2a10e1b20e1d..39a9534c24c4 100644
--- a/media-libs/libpng/files/libpng-1.2.21-off-by-one.patch
+++ b/media-libs/libpng/files/libpng-1.2.21-off-by-one.patch
@@ -2,12 +2,13 @@ http://bugs.gentoo.org/194864
http://sourceforge.net/mailarchive/forum.php?thread_name=47067C84.7010205%40playstation.sony.com&forum_name=png-mng-implement
--- pngset.c
+++ pngset.c
-@@ -690,7 +690,7 @@
+@@ -690,7 +690,8 @@
png_warning(png_ptr, "Insufficient memory to process iCCP chunk.");
return;
}
- png_strncpy(new_iccp_name, name, png_strlen(new_iccp_name)+1);
-+ png_strncpy(new_iccp_name, name, png_strlen(new_iccp_name));
++ png_strncpy(new_iccp_name, name, png_strlen(name));
++ new_iccp_name[png_strlen(name)+1]=0;
new_iccp_profile = (png_charp)png_malloc_warn(png_ptr, proflen);
if (new_iccp_profile == NULL)
{
diff --git a/media-libs/libpng/libpng-1.2.21-r2.ebuild b/media-libs/libpng/libpng-1.2.21-r2.ebuild
new file mode 100644
index 000000000000..ebf1bb0f369d
--- /dev/null
+++ b/media-libs/libpng/libpng-1.2.21-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libpng/libpng-1.2.21-r2.ebuild,v 1.1 2007/10/06 22:57:41 vapier Exp $
+
+inherit libtool multilib eutils flag-o-matic
+
+DESCRIPTION="Portable Network Graphics library"
+HOMEPAGE="http://www.libpng.org/"
+SRC_URI="mirror://sourceforge/libpng/${P}.tar.bz2
+ doc? ( http://www.libpng.org/pub/png/libpng-manual.txt )"
+
+LICENSE="as-is"
+SLOT="1.2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE="doc"
+
+DEPEND="sys-libs/zlib"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ use doc && cp "${WORKDIR}"/${PN}-manual.txt .
+ epatch "${FILESDIR}"/1.2.7-gentoo.diff
+ epatch "${FILESDIR}"/${P}-off-by-one.patch #194864
+
+ # So we get sane .so versioning on FreeBSD
+ elibtoolize
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc ANNOUNCE CHANGES KNOWNBUG README TODO Y2KINFO
+ use doc && dodoc libpng-manual.txt
+}
+
+pkg_postinst() {
+ # the libpng authors really screwed around between 1.2.1 and 1.2.3
+ if [[ -f ${ROOT}/usr/$(get_libdir)/libpng.so.3.1.2.1 ]] ; then
+ rm -f "${ROOT}"/usr/$(get_libdir)/libpng.so.3.1.2.1
+ fi
+}