summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2011-11-25 18:13:06 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2011-11-25 18:13:06 +0000
commit7f5ea852387a32bcc886d585f8910e31bdaba1e0 (patch)
treeb21bef2a74d247450de260a41204047bca31bcd9 /media-video/gxine
parentVersion bump (diff)
downloadgentoo-2-7f5ea852387a32bcc886d585f8910e31bdaba1e0.tar.gz
gentoo-2-7f5ea852387a32bcc886d585f8910e31bdaba1e0.tar.bz2
gentoo-2-7f5ea852387a32bcc886d585f8910e31bdaba1e0.zip
Fix segmentation fault in playlist wrt #390783 by Rafał Mużyło
(Portage version: 2.2.0_alpha77/cvs/Linux x86_64)
Diffstat (limited to 'media-video/gxine')
-rw-r--r--media-video/gxine/ChangeLog8
-rw-r--r--media-video/gxine/files/gxine-0.5.906-playlist_segfault.patch25
-rw-r--r--media-video/gxine/gxine-0.5.906-r1.ebuild95
3 files changed, 127 insertions, 1 deletions
diff --git a/media-video/gxine/ChangeLog b/media-video/gxine/ChangeLog
index ce4c0e23611b..fc28f83c21d6 100644
--- a/media-video/gxine/ChangeLog
+++ b/media-video/gxine/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-video/gxine
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/gxine/ChangeLog,v 1.112 2011/10/10 19:33:57 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/gxine/ChangeLog,v 1.113 2011/11/25 18:13:06 ssuominen Exp $
+
+*gxine-0.5.906-r1 (25 Nov 2011)
+
+ 25 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> +gxine-0.5.906-r1.ebuild,
+ +files/gxine-0.5.906-playlist_segfault.patch:
+ Fix segmentation fault in playlist wrt #390783 by Rafał Mużyło
10 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> gxine-0.5.906.ebuild:
Release to ~arch for testing. This one works with mozjs185 wrt #360971 by
diff --git a/media-video/gxine/files/gxine-0.5.906-playlist_segfault.patch b/media-video/gxine/files/gxine-0.5.906-playlist_segfault.patch
new file mode 100644
index 000000000000..acc6f0549692
--- /dev/null
+++ b/media-video/gxine/files/gxine-0.5.906-playlist_segfault.patch
@@ -0,0 +1,25 @@
+Fix segmentation fault in playlist wrt http://bugs.gentoo.org/390783 by Rafał Mużyło
+
+--- src/playlist.c
++++ src/playlist.c
+@@ -427,7 +427,7 @@ static int playlist_load (const char *fn
+ if (errno != ENOENT && (defaultfile || errno != ENOTDIR))
+ display_error (FROM_GXINE, _("Loading of playlist file failed."),
+ _("Failed to open file ‘%s’\n%s"), fname, strerror (errno));
+- goto ret0;
++ goto ret1;
+ }
+
+ xml_parser_init_R (xml_parser_t *xml, plfile, st.st_size, XML_PARSER_CASE_INSENSITIVE);
+@@ -524,9 +524,10 @@ static int playlist_load (const char *fn
+ return 1;
+
+ ret0:
+- free (plfile);
+ xml_parser_free_tree (root);
+ xml_parser_finalize_R (xml);
++ free (plfile);
++ ret1:
+ if (defaultfile)
+ free ((char *)fname);
+ return ret;
diff --git a/media-video/gxine/gxine-0.5.906-r1.ebuild b/media-video/gxine/gxine-0.5.906-r1.ebuild
new file mode 100644
index 000000000000..11369fed5015
--- /dev/null
+++ b/media-video/gxine/gxine-0.5.906-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/gxine/gxine-0.5.906-r1.ebuild,v 1.1 2011/11/25 18:13:06 ssuominen Exp $
+
+EAPI=4
+inherit autotools eutils fdo-mime gnome2-utils multilib nsplugins
+
+DESCRIPTION="GTK+ Front-End for libxine"
+HOMEPAGE="http://xine.sourceforge.net/"
+SRC_URI="mirror://sourceforge/xine/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="gnome lirc nls nsplugin udev xcb xinerama"
+
+RDEPEND=">=media-libs/xine-lib-1.1.17
+ >=x11-libs/gtk+-2.8:2
+ >=dev-libs/glib-2.10:2
+ >=x11-libs/pango-1.12
+ >=dev-lang/spidermonkey-1.8.2.15
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrender
+ gnome? ( >=dev-libs/dbus-glib-0.88 )
+ lirc? ( app-misc/lirc )
+ nls? ( virtual/libintl )
+ nsplugin? ( dev-libs/nspr
+ x11-libs/libXaw
+ x11-libs/libXt )
+ udev? ( || ( >=sys-fs/udev-171-r1[gudev] <sys-fs/udev-171-r1[extras] ) )
+ xcb? ( x11-libs/libxcb )
+ xinerama? ( x11-libs/libXinerama )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ # ld: cannot find -ljs
+ sed -i -e '/JS_LIBS="`spidermonkey_locate_lib/s:js:mozjs:' m4/_js.m4 || die
+
+ epatch \
+ "${FILESDIR}"/${PN}-0.5.905-desktop.patch \
+ "${FILESDIR}"/${PN}-0.5.905-fix-nspr-useage.patch \
+ "${FILESDIR}"/${P}-endif.patch \
+ "${FILESDIR}"/${P}-playlist_segfault.patch
+
+ # need to disable calling of xine-list when running without
+ # userpriv, otherwise we get sandbox violations (bug #233847)
+ if [[ ${EUID} == "0" ]]; then
+ sed -i -e 's:^XINE_LIST=.*$:XINE_LIST=:' configure.ac || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable lirc) \
+ --enable-watchdog \
+ $(use_with xcb) \
+ $(has_version '<dev-lang/spidermonkey-1.8.5' && echo --with-spidermonkey=/usr/include/js) \
+ $(use_with nsplugin browser-plugin) \
+ $(use_with udev gudev) \
+ --without-hal \
+ $(use_with gnome dbus) \
+ $(use_with xinerama)
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ docdir=/usr/share/doc/${PF} \
+ docsdir=/usr/share/doc/${PF} \
+ install
+
+ dodoc AUTHORS BUGS ChangeLog NEWS README{,.{cs,de},_l10n} TODO
+ use nsplugin && inst_plugin /usr/$(get_libdir)/gxine/gxineplugin.so
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}