diff options
author | Tony Vroon <chainsaw@gentoo.org> | 2005-06-29 20:12:55 +0000 |
---|---|---|
committer | Tony Vroon <chainsaw@gentoo.org> | 2005-06-29 20:12:55 +0000 |
commit | 6a0f978f9f319953ebe5b49844490310f6aee835 (patch) | |
tree | 28777da1e2e2767fdc3978ad938586968c5fbcbd /media-libs | |
parent | Added missing IUSE (diff) | |
download | gentoo-2-6a0f978f9f319953ebe5b49844490310f6aee835.tar.gz gentoo-2-6a0f978f9f319953ebe5b49844490310f6aee835.tar.bz2 gentoo-2-6a0f978f9f319953ebe5b49844490310f6aee835.zip |
Bump for memory leak patch; bug #95713.
(Portage version: 2.0.51.22-r1)
Diffstat (limited to 'media-libs')
-rw-r--r-- | media-libs/taglib/ChangeLog | 9 | ||||
-rw-r--r-- | media-libs/taglib/Manifest | 5 | ||||
-rw-r--r-- | media-libs/taglib/files/digest-taglib-1.3.1-r1 | 1 | ||||
-rw-r--r-- | media-libs/taglib/files/taglib-1.3.1-memleak-fix.patch | 103 | ||||
-rw-r--r-- | media-libs/taglib/taglib-1.3.1-r1.ebuild | 38 |
5 files changed, 154 insertions, 2 deletions
diff --git a/media-libs/taglib/ChangeLog b/media-libs/taglib/ChangeLog index ab19e410caa0..1b752df49ed6 100644 --- a/media-libs/taglib/ChangeLog +++ b/media-libs/taglib/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for media-libs/taglib # Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/taglib/ChangeLog,v 1.32 2005/02/22 08:38:35 hardave Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/taglib/ChangeLog,v 1.33 2005/06/29 20:12:55 chainsaw Exp $ + +*taglib-1.3.1-r1 (29 Jun 2005) + + 29 Jun 2005; Tony Vroon <chainsaw@gentoo.org> + +files/taglib-1.3.1-memleak-fix.patch, +taglib-1.3.1-r1.ebuild: + Bump for memory leak fix; patch from bug #95713 by Giacomo Perale + <ghepeu@virgilio.it>. 22 Feb 2005; Hardave Riar <hardave@gentoo.org> taglib-1.3.1.ebuild: Marked ~mips diff --git a/media-libs/taglib/Manifest b/media-libs/taglib/Manifest index 43edc64c67a6..d33a0997dbe9 100644 --- a/media-libs/taglib/Manifest +++ b/media-libs/taglib/Manifest @@ -1,4 +1,7 @@ MD5 acc03a4b12bb0433a57e95bd253b9501 metadata.xml 156 +MD5 daebce86b6b0069f275bd34307347871 ChangeLog 3489 MD5 96fd9919709b18bba8001266155f211f taglib-1.3.1.ebuild 903 -MD5 a7ebb2f90bd09a57b886a827cd4384ba ChangeLog 3250 +MD5 2596ff4f0e9981a2c6b88f590e319cec taglib-1.3.1-r1.ebuild 862 +MD5 b0a0fe848e08601d2c3614a82787f6ee files/taglib-1.3.1-memleak-fix.patch 2334 +MD5 cc8a58ea8028f3539fcee148baeffcc1 files/digest-taglib-1.3.1-r1 64 MD5 cc8a58ea8028f3539fcee148baeffcc1 files/digest-taglib-1.3.1 64 diff --git a/media-libs/taglib/files/digest-taglib-1.3.1-r1 b/media-libs/taglib/files/digest-taglib-1.3.1-r1 new file mode 100644 index 000000000000..cd73d6280f2b --- /dev/null +++ b/media-libs/taglib/files/digest-taglib-1.3.1-r1 @@ -0,0 +1 @@ +MD5 f5c7c71513ba51b240864d7475a199c0 taglib-1.3.1.tar.gz 734938 diff --git a/media-libs/taglib/files/taglib-1.3.1-memleak-fix.patch b/media-libs/taglib/files/taglib-1.3.1-memleak-fix.patch new file mode 100644 index 000000000000..6186c4fa797e --- /dev/null +++ b/media-libs/taglib/files/taglib-1.3.1-memleak-fix.patch @@ -0,0 +1,103 @@ +--- taglib/mpc/mpcproperties.cpp 2004/09/09 00:28:57 345141 ++++ taglib/mpc/mpcproperties.cpp 2005/04/02 20:53:11 402712 +@@ -106,7 +106,7 @@ + + void MPC::Properties::read() + { +- if(d->data.mid(0, 3) != "MP+") ++ if(!d->data.startsWith("MP+")) + return; + + d->version = d->data[3] & 15; +@@ -116,7 +116,7 @@ + if(d->version >= 7) { + frames = d->data.mid(4, 4).toUInt(false); + +- std::bitset<32> flags = d->data.mid(8, 4).toUInt(true); ++ std::bitset<32> flags = d->data.mid(8, 4).toUInt(false); + d->sampleRate = sftable[flags[17] * 2 + flags[16]]; + d->channels = 2; + } + + +--- taglib/mpc/mpcfile.cpp 2004/09/02 18:50:26 343576 ++++ taglib/mpc/mpcfile.cpp 2005/04/03 16:41:17 402896 +@@ -53,7 +53,10 @@ + + ~FilePrivate() + { ++ if (tag != ID3v1Tag && tag != APETag) delete tag; + delete ID3v1Tag; ++ delete APETag; ++ delete ID3v2Header; + delete properties; + } + +@@ -227,7 +230,7 @@ + if(d->APETag) + d->tag = d->APETag; + else +- d->tag = d->APETag = new APE::Tag(); ++ d->tag = d->APETag = new APE::Tag; + } + + if(tags & ID3v2) { +@@ -242,7 +245,7 @@ + if(d->ID3v1Tag) + d->tag = d->ID3v1Tag; + else +- d->tag = d->APETag = new APE::Tag(); ++ d->tag = d->APETag = new APE::Tag; + } + } + +@@ -284,7 +287,7 @@ + if(d->hasAPE) + d->tag = d->APETag; + else +- d->tag = d->APETag = new APE::Tag(); ++ d->tag = d->APETag = new APE::Tag; + } + } + + +--- taglib/ape/apeitem.h 2004/11/06 14:24:40 360969 ++++ taglib/ape/apeitem.h 2005/04/03 16:35:55 402891 +@@ -70,6 +70,11 @@ + Item(const Item &item); + + /*! ++ * Destroys the item. ++ */ ++ virtual ~Item(); ++ ++ /*! + * Copies the contents of \a item into this item. + */ + Item &operator=(const Item &item); + + +--- taglib/ape/apeitem.cpp 2004/11/06 14:43:24 360973 ++++ taglib/ape/apeitem.cpp 2005/04/03 16:35:55 402891 +@@ -62,6 +62,11 @@ + d = new ItemPrivate(*item.d); + } + ++APE::Item::~Item() ++{ ++ delete d; ++} ++ + Item &APE::Item::operator=(const Item &item) + { + delete d; +@@ -121,7 +126,7 @@ + case 1: + if(d->text.isEmpty()) + return true; +- if(d->text.size() == 1 && d->text.front() == "") ++ if(d->text.size() == 1 && d->text.front().isEmpty()) + return true; + return false; + case 2: + diff --git a/media-libs/taglib/taglib-1.3.1-r1.ebuild b/media-libs/taglib/taglib-1.3.1-r1.ebuild new file mode 100644 index 000000000000..0faf2782b723 --- /dev/null +++ b/media-libs/taglib/taglib-1.3.1-r1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/taglib/taglib-1.3.1-r1.ebuild,v 1.1 2005/06/29 20:12:55 chainsaw Exp $ + +inherit eutils flag-o-matic + +DESCRIPTION="A library for reading and editing audio meta data" +HOMEPAGE="http://developer.kde.org/~wheeler/index.html" +SRC_URI="http://developer.kde.org/~wheeler/files/src/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~mips" +IUSE="debug" + +DEPEND=">=sys-devel/autoconf-2.58" +RDEPEND="" + +src_unpack() { + unpack ${A} + cd ${S} + epatch ${FILESDIR}/${P}-memleak-fix.patch + + rm -rf autom4te.cache + export WANT_AUTOCONF=2.5 + export WANT_AUTOMAKE=1.7 + aclocal && autoconf && automake || die "autotools failed" +} + +src_compile() { + replace-flags -O3 -O2 + econf `use_enable debug` || die + emake || die +} + +src_install() { + make install DESTDIR=${D} destdir=${D} || die +} |