diff options
author | Samuli Suominen <ssuominen@gentoo.org> | 2011-11-25 18:13:06 +0000 |
---|---|---|
committer | Samuli Suominen <ssuominen@gentoo.org> | 2011-11-25 18:13:06 +0000 |
commit | 7f5ea852387a32bcc886d585f8910e31bdaba1e0 (patch) | |
tree | b21bef2a74d247450de260a41204047bca31bcd9 /media-video/gxine | |
parent | Version bump (diff) | |
download | gentoo-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/ChangeLog | 8 | ||||
-rw-r--r-- | media-video/gxine/files/gxine-0.5.906-playlist_segfault.patch | 25 | ||||
-rw-r--r-- | media-video/gxine/gxine-0.5.906-r1.ebuild | 95 |
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 +} |