summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2008-01-13 16:17:59 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2008-01-13 16:17:59 +0000
commitb71e357074f52fda097ace28272ba19815201927 (patch)
tree61aed0be0feb4089e9f33f6f53c8ff48ca84d386 /dev-libs
parentAdd eZ Components 2007.2 from project overlay (diff)
downloadgentoo-2-b71e357074f52fda097ace28272ba19815201927.tar.gz
gentoo-2-b71e357074f52fda097ace28272ba19815201927.tar.bz2
gentoo-2-b71e357074f52fda097ace28272ba19815201927.zip
Fix (again) the patch for bug #203777.
(Portage version: 2.1.4)
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/libcdio/ChangeLog10
-rw-r--r--dev-libs/libcdio/files/digest-libcdio-0.78.2-r43
-rw-r--r--dev-libs/libcdio/files/digest-libcdio-0.79-r1 (renamed from dev-libs/libcdio/files/digest-libcdio-0.79)0
-rw-r--r--dev-libs/libcdio/files/libcdio-0.78.2-bug203777-ter.patch78
-rw-r--r--dev-libs/libcdio/libcdio-0.78.2-r4.ebuild64
-rw-r--r--dev-libs/libcdio/libcdio-0.79-r1.ebuild (renamed from dev-libs/libcdio/libcdio-0.79.ebuild)4
6 files changed, 156 insertions, 3 deletions
diff --git a/dev-libs/libcdio/ChangeLog b/dev-libs/libcdio/ChangeLog
index 246135cba550..0d6eccd53388 100644
--- a/dev-libs/libcdio/ChangeLog
+++ b/dev-libs/libcdio/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-libs/libcdio
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libcdio/ChangeLog,v 1.84 2008/01/04 23:16:45 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libcdio/ChangeLog,v 1.85 2008/01/13 16:17:58 flameeyes Exp $
+
+*libcdio-0.79-r1 (13 Jan 2008)
+*libcdio-0.78.2-r4 (13 Jan 2008)
+
+ 13 Jan 2008; Diego Pettenò <flameeyes@gentoo.org>
+ +files/libcdio-0.78.2-bug203777-ter.patch, +libcdio-0.78.2-r4.ebuild,
+ -libcdio-0.79.ebuild, +libcdio-0.79-r1.ebuild:
+ Fix (again) the patch for bug #203777.
*libcdio-0.78.2-r3 (04 Jan 2008)
diff --git a/dev-libs/libcdio/files/digest-libcdio-0.78.2-r4 b/dev-libs/libcdio/files/digest-libcdio-0.78.2-r4
new file mode 100644
index 000000000000..6fcd9e480dcb
--- /dev/null
+++ b/dev-libs/libcdio/files/digest-libcdio-0.78.2-r4
@@ -0,0 +1,3 @@
+MD5 a6b73300d1247012a1b1246d935ac0d3 libcdio-0.78.2.tar.gz 2024218
+RMD160 4e32dd9bb4bd19b6604ce3d3c4716b6481b6956a libcdio-0.78.2.tar.gz 2024218
+SHA256 2792e4133a89b254644ffe526c8eab785e1de3078d3a9c1ec03653247700ebde libcdio-0.78.2.tar.gz 2024218
diff --git a/dev-libs/libcdio/files/digest-libcdio-0.79 b/dev-libs/libcdio/files/digest-libcdio-0.79-r1
index 547b1f0c41c5..547b1f0c41c5 100644
--- a/dev-libs/libcdio/files/digest-libcdio-0.79
+++ b/dev-libs/libcdio/files/digest-libcdio-0.79-r1
diff --git a/dev-libs/libcdio/files/libcdio-0.78.2-bug203777-ter.patch b/dev-libs/libcdio/files/libcdio-0.78.2-bug203777-ter.patch
new file mode 100644
index 000000000000..2134789b1c5d
--- /dev/null
+++ b/dev-libs/libcdio/files/libcdio-0.78.2-bug203777-ter.patch
@@ -0,0 +1,78 @@
+Index: libcdio-0.78.2/src/cd-info.c
+===================================================================
+--- libcdio-0.78.2.orig/src/cd-info.c
++++ libcdio-0.78.2/src/cd-info.c
+@@ -518,6 +518,8 @@ print_iso9660_recurse (CdIo_t *p_cdio, c
+ CdioList_t *p_dirlist = _cdio_list_new ();
+ CdioListNode_t *entnode;
+ uint8_t i_joliet_level;
++ char *translated_name = (char *) malloc(4096);
++ size_t translated_name_size = 4096;
+
+ i_joliet_level = (opts.no_joliet)
+ ? 0
+@@ -539,7 +541,15 @@ print_iso9660_recurse (CdIo_t *p_cdio, c
+ iso9660_stat_t *p_statbuf = _cdio_list_node_data (entnode);
+ char *psz_iso_name = p_statbuf->filename;
+ char _fullname[4096] = { 0, };
+- char translated_name[MAX_ISONAME+1];
++ if (strlen(psz_iso_name) >= translated_name_size) {
++ translated_name_size = strlen(psz_iso_name)+1;
++ free(translated_name);
++ translated_name = (char *) malloc(translated_name_size);
++ if (!translated_name) {
++ report( stderr, "Error allocating memory\n" );
++ return;
++ }
++ }
+
+ if (yep != p_statbuf->rr.b3_rock || 1 == opts.no_rock_ridge) {
+ iso9660_name_translate_ext(psz_iso_name, translated_name,
+@@ -564,6 +574,7 @@ print_iso9660_recurse (CdIo_t *p_cdio, c
+ p_statbuf->rr.i_symlink = 0;
+ }
+ }
++ free (translated_name);
+
+ _cdio_list_free (p_entlist, true);
+
+Index: libcdio-0.78.2/src/iso-info.c
+===================================================================
+--- libcdio-0.78.2.orig/src/iso-info.c
++++ libcdio-0.78.2/src/iso-info.c
+@@ -205,7 +205,8 @@ print_iso9660_recurse (iso9660_t *p_iso,
+ CdioList_t *dirlist = _cdio_list_new ();
+ CdioListNode_t *entnode;
+ uint8_t i_joliet_level = iso9660_ifs_get_joliet_level(p_iso);
+-
++ char *translated_name = (char *) malloc(4096);
++ size_t translated_name_size = 4096;
+ entlist = iso9660_ifs_readdir (p_iso, psz_path);
+
+ if (opts.print_iso9660) {
+@@ -224,7 +225,16 @@ print_iso9660_recurse (iso9660_t *p_iso,
+ iso9660_stat_t *p_statbuf = _cdio_list_node_data (entnode);
+ char *psz_iso_name = p_statbuf->filename;
+ char _fullname[4096] = { 0, };
+- char translated_name[MAX_ISONAME+1];
++ if (strlen(psz_iso_name) >= translated_name_size) {
++ translated_name_size = strlen(psz_iso_name)+1;
++ free(translated_name);
++ translated_name = (char *) malloc(translated_name_size);
++ if (!translated_name) {
++ report( stderr, "Error allocating memory\n" );
++ return;
++ }
++ }
++
+
+ if (yep != p_statbuf->rr.b3_rock || 1 == opts.no_rock_ridge) {
+ iso9660_name_translate_ext(psz_iso_name, translated_name,
+@@ -258,6 +268,7 @@ print_iso9660_recurse (iso9660_t *p_iso,
+ p_statbuf->rr.i_symlink = 0;
+ }
+ }
++ free (translated_name);
+
+ _cdio_list_free (entlist, true);
+
diff --git a/dev-libs/libcdio/libcdio-0.78.2-r4.ebuild b/dev-libs/libcdio/libcdio-0.78.2-r4.ebuild
new file mode 100644
index 000000000000..69a0d2bebe6f
--- /dev/null
+++ b/dev-libs/libcdio/libcdio-0.78.2-r4.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libcdio/libcdio-0.78.2-r4.ebuild,v 1.1 2008/01/13 16:17:58 flameeyes Exp $
+
+inherit eutils libtool multilib
+
+DESCRIPTION="A library to encapsulate CD-ROM reading and control"
+HOMEPAGE="http://www.gnu.org/software/libcdio/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE="cddb minimal nls nocxx"
+
+RDEPEND="cddb? ( >=media-libs/libcddb-1.0.1 )
+ nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )
+ dev-util/pkgconfig"
+
+RESTRICT="test"
+
+src_unpack() {
+ unpack ${A}
+ epatch "${FILESDIR}/${P}-gcc-4.3-includes.patch"
+ epatch "${FILESDIR}/${P}-bug203777-ter.patch"
+ elibtoolize
+}
+
+src_compile() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable cddb) \
+ $(use_with !minimal cd-drive) \
+ $(use_with !minimal cd-info) \
+ $(use_with !minimal cd-paranoia) \
+ $(use_with !minimal cdda-player) \
+ $(use_with !minimal cd-read) \
+ $(use_with !minimal iso-info) \
+ $(use_with !minimal iso-read) \
+ $(use_enable !nocxx cxx) \
+ --with-cd-paranoia-name=libcdio-paranoia \
+ --disable-vcd-info \
+ --disable-dependency-tracking || die "configure failed"
+ emake || die "make failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+ dodoc AUTHORS ChangeLog NEWS README THANKS
+
+ # maybe next version is fixed
+ if use minimal; then
+ rm -f "${D}/usr/$(get_libdir)/pkgconfig/libcdio_cdda.pc"
+ rm -f "${D}/usr/include/cdio/cdda.h"
+ fi
+}
+
+pkg_postinst() {
+ ewarn "If you've upgraded from a previous version of ${PN}, you may need to re-emerge"
+ ewarn "packages that linked against ${PN} (vlc, vcdimager and more) by running:"
+ ewarn "\trevdep-rebuild"
+}
diff --git a/dev-libs/libcdio/libcdio-0.79.ebuild b/dev-libs/libcdio/libcdio-0.79-r1.ebuild
index ae58fbc7d1e7..53403ffde948 100644
--- a/dev-libs/libcdio/libcdio-0.79.ebuild
+++ b/dev-libs/libcdio/libcdio-0.79-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libcdio/libcdio-0.79.ebuild,v 1.1 2008/01/01 02:56:31 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libcdio/libcdio-0.79-r1.ebuild,v 1.1 2008/01/13 16:17:58 flameeyes Exp $
inherit eutils libtool multilib
@@ -25,7 +25,7 @@ src_unpack() {
unpack ${A}
cd "${S}"
- epatch "${FILESDIR}/${PN}-0.78.2-bug203777.patch"
+ epatch "${FILESDIR}/${PN}-0.78.2-bug203777-ter.patch"
elibtoolize
}