summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Vroon <chainsaw@gentoo.org>2005-06-29 20:12:55 +0000
committerTony Vroon <chainsaw@gentoo.org>2005-06-29 20:12:55 +0000
commit6a0f978f9f319953ebe5b49844490310f6aee835 (patch)
tree28777da1e2e2767fdc3978ad938586968c5fbcbd /media-libs/taglib
parentAdded missing IUSE (diff)
downloadgentoo-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/taglib')
-rw-r--r--media-libs/taglib/ChangeLog9
-rw-r--r--media-libs/taglib/Manifest5
-rw-r--r--media-libs/taglib/files/digest-taglib-1.3.1-r11
-rw-r--r--media-libs/taglib/files/taglib-1.3.1-memleak-fix.patch103
-rw-r--r--media-libs/taglib/taglib-1.3.1-r1.ebuild38
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
+}