From 6f4449c90d756dd01c8e3847cdbd6baf53d6bd69 Mon Sep 17 00:00:00 2001 From: Samuli Suominen Date: Sun, 24 Feb 2008 18:43:12 +0000 Subject: [PATCH] Fix for overflow bug in size calculation by Hendrik Iben wrt #211289. Package-Manager: portage-2.1.4.4 --- media-libs/libtimidity/ChangeLog | 11 +++++- media-libs/libtimidity/Manifest | 4 +- .../libtimidity-0.1.0-newlen-overflow.patch | 22 +++++++++++ .../libtimidity/libtimidity-0.1.0-r1.ebuild | 38 +++++++++++++++++++ 4 files changed, 72 insertions(+), 3 deletions(-) create mode 100644 media-libs/libtimidity/files/libtimidity-0.1.0-newlen-overflow.patch create mode 100644 media-libs/libtimidity/libtimidity-0.1.0-r1.ebuild diff --git a/media-libs/libtimidity/ChangeLog b/media-libs/libtimidity/ChangeLog index c7e36f039ec2..0a25d204ce90 100644 --- a/media-libs/libtimidity/ChangeLog +++ b/media-libs/libtimidity/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for media-libs/libtimidity -# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/libtimidity/ChangeLog,v 1.11 2007/12/05 15:45:55 fmccor Exp $ +# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/libtimidity/ChangeLog,v 1.12 2008/02/24 18:43:11 drac Exp $ + +*libtimidity-0.1.0-r1 (24 Feb 2008) + + 24 Feb 2008; Samuli Suominen + +files/libtimidity-0.1.0-newlen-overflow.patch, + +libtimidity-0.1.0-r1.ebuild: + Fix for overflow bug in size calculation by Hendrik Iben wrt #211289. 05 Dec 2007; Ferris McCormick libtimidity-0.1.0.ebuild: diff --git a/media-libs/libtimidity/Manifest b/media-libs/libtimidity/Manifest index 75ba1f5782c1..9ae5ced7fb11 100644 --- a/media-libs/libtimidity/Manifest +++ b/media-libs/libtimidity/Manifest @@ -1,5 +1,7 @@ AUX libtimidity-0.1.0-automagic.patch 872 RMD160 c8ce84448988d70b9b491c084c2c37fa5207ba55 SHA1 69c0022d4f770acee3aa5dce3c12a9fe863f4af4 SHA256 e7e762cda7ef5299e3c48a638ca3b74b5d48ab1db4dbb19355a16b5fb63c4da9 +AUX libtimidity-0.1.0-newlen-overflow.patch 863 RMD160 5890878319c2cfa50cd1f2173b0bb26c0be3b037 SHA1 15aa814c1b20cd9e2e32344d2f040efa2c6a68af SHA256 8450d7e0709439236656008c1cc887adbb99b821bf4121112367255359c4b30a DIST libtimidity-0.1.0.tar.bz2 273410 RMD160 1b4b8ddea3bbd9158b6d8b8f2b504c2dc533025b SHA1 6f3bb122a76d85b10ae4ad39db38a1c9ef75ef2c SHA256 52c6de6608ba640b4678041c01320290790a1f18c901ef03575fbf47807350bf +EBUILD libtimidity-0.1.0-r1.ebuild 966 RMD160 6d561564de30cebef9acdf716177c4cf971b2de7 SHA1 9b2ea1ffc751bd510a1fe3fdc44bdd1f1c68058c SHA256 72e9187cc2ea66bf92b6aec9121a805c729d558d36001b3a5418b943117c2374 EBUILD libtimidity-0.1.0.ebuild 912 RMD160 74b5b8140771aff94ac19b04dac669a73cdfb2d8 SHA1 df327df12c6b3551c8f1e2d5606546242ead7c78 SHA256 748814f963e918c2c9a06e7c546f74b0c4f0f070609dd7b99d63d4d48f852cc9 -MISC ChangeLog 1667 RMD160 8ee6761a7e4eae0e39ae4249ab315fe83463a866 SHA1 afb891d26b80def76c3671c9614bb0bcc4eb8ca2 SHA256 2485c42508d8d04901b6ca1eb2ad3145cf13cd2455fee84e5a884e1b38caaefa +MISC ChangeLog 1906 RMD160 fac362f6d30a3cecb03f17d6707ed569b666541d SHA1 492818093ceefdaa1a7be55228259dbbbeb4ca80 SHA256 927527d132453408a63b5d7297ec45ee625f731d36c92c5bbe8e89732c8594de MISC metadata.xml 158 RMD160 6842e2189a50bd8a98e84802c38180ac1421c00e SHA1 703cea5a2109d41f7c87993c1f01d418a4c85174 SHA256 dfb5b47e6836db39fb187301dfcff1c2605e91d13d21db160806a563d8c75f9b diff --git a/media-libs/libtimidity/files/libtimidity-0.1.0-newlen-overflow.patch b/media-libs/libtimidity/files/libtimidity-0.1.0-newlen-overflow.patch new file mode 100644 index 000000000000..22952a5ebba1 --- /dev/null +++ b/media-libs/libtimidity/files/libtimidity-0.1.0-newlen-overflow.patch @@ -0,0 +1,22 @@ +diff -Naur libtimidity-0.1.0/src/resample.c libtimidity-0.1.0-r1/src/resample.c +--- libtimidity-0.1.0/src/resample.c 2004-11-21 23:02:53.000000000 +0100 ++++ libtimidity-0.1.0-r1/src/resample.c 2008-02-24 18:46:36.000000000 +0100 +@@ -545,7 +545,8 @@ + void pre_resample(MidSong *song, MidSample *sp) + { + double a, xdiff; +- sint32 incr, ofs, newlen, count; ++ sint32 incr, ofs, count; ++ unsigned int newlen; + sint16 *newdata, *dest, *src = (sint16 *) sp->data; + sint16 v1, v2, v3, v4, *vptr; + #ifdef DEBUG_CHATTER +@@ -561,7 +562,7 @@ + + a = ((double) (sp->sample_rate) * freq_table[(int) (sp->note_to_use)]) / + ((double) (sp->root_freq) * song->rate); +- newlen = (sint32)(sp->data_length / a); ++ newlen = (unsigned int)(sp->data_length / a); + dest = newdata = safe_malloc(newlen >> (FRACTION_BITS - 1)); + + count = (newlen >> FRACTION_BITS) - 1; diff --git a/media-libs/libtimidity/libtimidity-0.1.0-r1.ebuild b/media-libs/libtimidity/libtimidity-0.1.0-r1.ebuild new file mode 100644 index 000000000000..5bdb9d48f495 --- /dev/null +++ b/media-libs/libtimidity/libtimidity-0.1.0-r1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/libtimidity/libtimidity-0.1.0-r1.ebuild,v 1.1 2008/02/24 18:43:11 drac Exp $ + +inherit autotools eutils + +DESCRIPTION="MIDI to WAVE converter library" +HOMEPAGE="http://libtimidity.sourceforge.net" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="ao debug" + +RDEPEND="ao? ( media-libs/libao )" +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +RESTRICT="test" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-newlen-overflow.patch + epatch "${FILESDIR}"/${P}-automagic.patch + eautoreconf +} + +src_compile() { + econf --disable-aotest $(use_enable ao) $(use_enable debug) + emake || die "emake failed." +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed." + dodoc AUTHORS ChangeLog CHANGES NEWS TODO README* +} -- 2.26.2