diff options
author | Peter Alfredsen <loki_val@gentoo.org> | 2009-01-09 12:54:19 +0000 |
---|---|---|
committer | Peter Alfredsen <loki_val@gentoo.org> | 2009-01-09 12:54:19 +0000 |
commit | 526b04ba4638fead44be47a27db254a8c7c24760 (patch) | |
tree | 00699da60d90a308dba004705feb55c4aa38010b /media-libs/gstreamer | |
parent | version bump (diff) | |
download | historical-526b04ba4638fead44be47a27db254a8c7c24760.tar.gz historical-526b04ba4638fead44be47a27db254a8c7c24760.tar.bz2 historical-526b04ba4638fead44be47a27db254a8c7c24760.zip |
Fix bug 250704, upstream bug 555631, Banshee crashing or doing a tail-spin with gstreamer. Bump masked version to -r10, the new 'ordinary' version is -r3.
Package-Manager: portage-2.2_rc20/cvs/Linux 2.6.28 x86_64
Diffstat (limited to 'media-libs/gstreamer')
-rw-r--r-- | media-libs/gstreamer/ChangeLog | 15 | ||||
-rw-r--r-- | media-libs/gstreamer/Manifest | 7 | ||||
-rw-r--r-- | media-libs/gstreamer/files/gstreamer-0.10.21-b.g.o-555631.patch | 100 | ||||
-rw-r--r-- | media-libs/gstreamer/gstreamer-0.10.21-r10.ebuild (renamed from media-libs/gstreamer/gstreamer-0.10.21-r2.ebuild) | 7 | ||||
-rw-r--r-- | media-libs/gstreamer/gstreamer-0.10.21-r3.ebuild (renamed from media-libs/gstreamer/gstreamer-0.10.21-r1.ebuild) | 7 |
5 files changed, 125 insertions, 11 deletions
diff --git a/media-libs/gstreamer/ChangeLog b/media-libs/gstreamer/ChangeLog index c1c8a9980e8b..319397a376b2 100644 --- a/media-libs/gstreamer/ChangeLog +++ b/media-libs/gstreamer/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for media-libs/gstreamer -# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/gstreamer/ChangeLog,v 1.215 2008/12/24 13:39:17 ssuominen Exp $ +# Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/gstreamer/ChangeLog,v 1.216 2009/01/09 12:54:19 loki_val Exp $ + +*gstreamer-0.10.21-r10 (09 Jan 2009) +*gstreamer-0.10.21-r3 (09 Jan 2009) + + 09 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> + +files/gstreamer-0.10.21-b.g.o-555631.patch, -gstreamer-0.10.21-r1.ebuild, + -gstreamer-0.10.21-r2.ebuild, +gstreamer-0.10.21-r3.ebuild, + +gstreamer-0.10.21-r10.ebuild: + Fix bug 250704, upstream bug 555631, Banshee crashing or doing a tail-spin + with gstreamer. Bump masked version to -r10, the new 'ordinary' version is + -r3. *gstreamer-0.10.21-r2 (24 Dec 2008) diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest index 270636251084..67f3a0bd0d4c 100644 --- a/media-libs/gstreamer/Manifest +++ b/media-libs/gstreamer/Manifest @@ -1,4 +1,5 @@ AUX gstreamer-0.10.14-gstcaps.patch 506 RMD160 7d77743a78dfae975c025f659c7f3036a6de306f SHA1 05c590413953105fcbb0e071ed1b38c6103a7802 SHA256 d77061a547f4a658548b14f2de9579989ed1190381c41bbe9a4da578c734d57e +AUX gstreamer-0.10.21-b.g.o-555631.patch 3719 RMD160 0fda33acf5113ad9e9c1333fff791cea485f01d2 SHA1 85ccb9ac759b0ed1349a052e6df1904f1a10a7b6 SHA256 419373c261dac2443ec850e96a9939fd55f4e0d7c5587cd0a6793d4768c81594 AUX gstreamer-0.10.21-bison241.patch 547 RMD160 257a17ee81688e3c86eb3a62e8f4146d85dc793a SHA1 8da50114a524a12695835379ee6564c769cd3a79 SHA256 136f74dab6bd8233b3ae5be771474758e7aaca06ae7b0e6a6904bda841984d55 AUX gstreamer-0.10.21-gtkdoc.patch 816 RMD160 70b89d12357dcf8fa063ead4f337ad39b3494db9 SHA1 7b6080f563afd9e31ae28f38bcbfcab3e4bc6564 SHA256 592d2257a038aa267b4e01a0dbdc3625ab55a00f763f85b75c573e413872a0b3 DIST gstreamer-0.10.14.tar.bz2 2004318 RMD160 6e6f75c89da223ac42a0ab3cc1642b24007a9181 SHA1 29e02be4dbf50272086e436f3fab2dcfadaaff2b SHA256 e684179e63262c7271dbc50e64ead205cae013daac7264d8effbf60fed3f2438 @@ -6,8 +7,8 @@ DIST gstreamer-0.10.20.tar.bz2 2253801 RMD160 8b3fa0ebdd30071c820bd3a9f7fec2104f DIST gstreamer-0.10.21.tar.bz2 2662621 RMD160 d801ff66390ef41880cf0be1fee6f7aebf177876 SHA1 892daa9517dd7603e80b009dc059e20f4daea66f SHA256 94c185a0452b5fcddb538f6b686ff959b7afca8340c48fdbe47c87a2a459c3d3 EBUILD gstreamer-0.10.14.ebuild 2216 RMD160 cb317baf6a9067db2168bef6651b44dec393cbc0 SHA1 cda76a7b901d36bdcae18bfec4b059aaf21d6c5e SHA256 1efc0053fc3c9ee53a55d0c3488bb2bc3cd4e0e5e4664ff6516be9aa65f3dee3 EBUILD gstreamer-0.10.20.ebuild 1605 RMD160 2d272fc2dfa4e8ebe08f9cac87fdd21b32919181 SHA1 ec88e83229ae62d377cc68dd32196d93cdb31595 SHA256 039d93accf50fa58eb0af9696cd515f11810a86b9723434a7fcd6307ef440a0b -EBUILD gstreamer-0.10.21-r1.ebuild 1811 RMD160 c1e162f2e6d5c5200a6f3d81c24291ce4ea60066 SHA1 1daeddbede262bba2151b59460dd1aa7a2cc3ad3 SHA256 a6bf6b09cd56b4787450871bb0edaeca953a626ee497c4a4e7869abe27586b30 -EBUILD gstreamer-0.10.21-r2.ebuild 1934 RMD160 af9bd5188debbaa04a8d3fa30494c1514ab977d3 SHA1 c973442ecc81c08fc7ed1048de6bd53c9b33bf17 SHA256 a6dfaef7bd5f4bb4bbdc73a16590281e08160f5365b8f225b164044fc376337f +EBUILD gstreamer-0.10.21-r10.ebuild 1976 RMD160 5553b5d161afe277c696c2405cf3a356929583ac SHA1 aef400ffc92bb2462d7f1a317313e4317c7ce054 SHA256 f97da256b67f0bc1e4880df51ea0d1171c2f5af7403eb50f4069039c58fdfa71 +EBUILD gstreamer-0.10.21-r3.ebuild 1852 RMD160 659eb9ff60496395e830f35dae95efd4709b9390 SHA1 e8a69f6f74d4c4aa5e61ce2fa11c606572bda523 SHA256 e3933355d0eafb4363e96b85a84f98325872aae0cc86cbde353e4f8924c35e97 EBUILD gstreamer-0.10.21.ebuild 1734 RMD160 297a0b864b20c938f45b49cd26f5368c90bdbf8d SHA1 e75dde85f3808ff79b26e18b2c179424b1a80ba6 SHA256 9fdd963c15ca509e2f9f8576ed2eb8e33789ad619164fe7e32d9bb1a8062fabf -MISC ChangeLog 28002 RMD160 49405f96b20ac48354b40256eb2e557f98550b08 SHA1 64e1a2d8e2d03b7f2aa709a84d26a3a11ce44986 SHA256 71c4e3584d89c1a1a607b3a213cbfb14d46f44d799ffb7efc127733a2b353a23 +MISC ChangeLog 28462 RMD160 95cc4d5dbcb7f90cad04bf0bd5c89a1fb850f4b7 SHA1 51ed6c58441d387af2ce6179d021d5c79d657506 SHA256 92c145cbdb424b2f8455dba0ebc05ab04f4d4a3d8fd53af77ba8827f94e4b53f MISC metadata.xml 181 RMD160 51814fbdcf7f32cfe70018b3af7fc798e41ff90d SHA1 faf40c45bd66b0072b95556cf7ab097d3be19511 SHA256 22c215902ccdc7fd8cdb765750fb23ea9d9b6c9d3edb1b45325c3469f8f6ffc5 diff --git a/media-libs/gstreamer/files/gstreamer-0.10.21-b.g.o-555631.patch b/media-libs/gstreamer/files/gstreamer-0.10.21-b.g.o-555631.patch new file mode 100644 index 000000000000..922d8beb3cfa --- /dev/null +++ b/media-libs/gstreamer/files/gstreamer-0.10.21-b.g.o-555631.patch @@ -0,0 +1,100 @@ + +* libs/gst/base/gstbasetransform.c: +(gst_base_transform_prepare_output_buffer), +(gst_base_transform_buffer_alloc), (gst_base_transform_suggest): +Protect sink_alloc caps with the sinkpad lock to avoid nasty caps +refcount problems as seen in banshee and maybe also in farsight2. +Remove atomic int now that we need to take the lock anyways. + +http://bugzilla.gnome.org/show_bug.cgi?id=555631 +http://bugs.gentoo.org/show_bug.cgi?id=250704 +http://webcvs.freedesktop.org/gstreamer/gstreamer/libs/gst/base/gstbasetransform.c?r1=1.126&r2=1.127 + +--- gstreamer/libs/gst/base/gstbasetransform.c 2008/10/20 13:29:06 1.126 ++++ gstreamer/libs/gst/base/gstbasetransform.c 2008/10/21 16:30:41 1.127 +@@ -251,7 +251,7 @@ + /* upstream caps and size suggestions */ + GstCaps *sink_suggest; + guint size_suggest; +- gint suggest_pending; ++ gboolean suggest_pending; + + gboolean reconfigure; + }; +@@ -1224,7 +1224,7 @@ + gst_caps_unref (priv->sink_suggest); + priv->sink_suggest = gst_caps_ref (othercaps); + priv->size_suggest = size_suggest; +- g_atomic_int_set (&trans->priv->suggest_pending, 1); ++ trans->priv->suggest_pending = TRUE; + GST_OBJECT_UNLOCK (trans->sinkpad); + } + gst_caps_unref (othercaps); +@@ -1366,7 +1366,7 @@ + GstBaseTransform *trans; + GstBaseTransformPrivate *priv; + GstFlowReturn res; +- gboolean proxy, suggest; ++ gboolean proxy, suggest, same_caps; + GstCaps *sink_suggest; + guint size_suggest; + +@@ -1384,8 +1384,12 @@ + + /* we remember our previous alloc request to quickly see if we can proxy or + * not. We skip this check if we have a pending suggestion. */ +- if (g_atomic_int_get (&priv->suggest_pending) == 0 && caps && +- gst_caps_is_equal (priv->sink_alloc, caps)) { ++ GST_OBJECT_LOCK (pad); ++ same_caps = !priv->suggest_pending && caps && ++ gst_caps_is_equal (priv->sink_alloc, caps); ++ GST_OBJECT_UNLOCK (pad); ++ ++ if (same_caps) { + /* we have seen this before, see below if we need to proxy */ + GST_DEBUG_OBJECT (trans, "have old caps"); + sink_suggest = caps; +@@ -1414,7 +1418,7 @@ + size_suggest = size; + suggest = FALSE; + } +- g_atomic_int_set (&priv->suggest_pending, 0); ++ priv->suggest_pending = FALSE; + GST_OBJECT_UNLOCK (pad); + + /* check if we actually handle this format on the sinkpad */ +@@ -1462,7 +1466,10 @@ + } + } + /* remember the new caps */ ++ GST_OBJECT_LOCK (pad); + gst_caps_replace (&priv->sink_alloc, sink_suggest); ++ GST_OBJECT_UNLOCK (pad); ++ + proxy = priv->proxy_alloc; + GST_DEBUG_OBJECT (trans, "doing default alloc, proxy %d", proxy); + +@@ -1487,11 +1494,13 @@ + if (!gst_caps_is_equal (newcaps, caps)) { + GST_DEBUG_OBJECT (trans, "caps are new"); + /* we have new caps, see if we can proxy downstream */ +- if (gst_pad_peer_accept_caps (trans->sinkpad, newcaps)) { ++ if (gst_pad_peer_accept_caps (pad, newcaps)) { + /* peer accepts the caps, return a buffer in this format */ + GST_DEBUG_OBJECT (trans, "peer accepted new caps"); + /* remember the format */ ++ GST_OBJECT_LOCK (pad); + gst_caps_replace (&priv->sink_alloc, newcaps); ++ GST_OBJECT_UNLOCK (pad); + } else { + GST_DEBUG_OBJECT (trans, "peer did not accept new caps"); + /* peer does not accept the caps, free the buffer we received and +@@ -2306,7 +2315,7 @@ + caps = gst_caps_copy (caps); + trans->priv->sink_suggest = caps; + trans->priv->size_suggest = size; +- g_atomic_int_set (&trans->priv->suggest_pending, 1); ++ trans->priv->suggest_pending = TRUE; + GST_DEBUG_OBJECT (trans, "new suggest %" GST_PTR_FORMAT, caps); + GST_OBJECT_UNLOCK (trans->sinkpad); + } diff --git a/media-libs/gstreamer/gstreamer-0.10.21-r2.ebuild b/media-libs/gstreamer/gstreamer-0.10.21-r10.ebuild index 754a34e24385..e8b6723a4895 100644 --- a/media-libs/gstreamer/gstreamer-0.10.21-r2.ebuild +++ b/media-libs/gstreamer/gstreamer-0.10.21-r10.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2008 Gentoo Foundation +# Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/gstreamer/gstreamer-0.10.21-r2.ebuild,v 1.3 2008/12/31 03:30:47 mr_bones_ Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/gstreamer/gstreamer-0.10.21-r10.ebuild,v 1.1 2009/01/09 12:54:19 loki_val Exp $ EAPI=2 @@ -30,7 +30,8 @@ src_prepare() { # Needed for sane .so versioning on Gentoo/FreeBSD #elibtoolize epatch "${FILESDIR}"/${P}-gtkdoc.patch \ - "${FILESDIR}"/${P}-bison241.patch + "${FILESDIR}"/${P}-bison241.patch \ + "${FILESDIR}"/${P}-b.g.o-555631.patch AT_M4DIR="common/m4" eautoreconf } diff --git a/media-libs/gstreamer/gstreamer-0.10.21-r1.ebuild b/media-libs/gstreamer/gstreamer-0.10.21-r3.ebuild index a5657c7226ec..7908f18dce18 100644 --- a/media-libs/gstreamer/gstreamer-0.10.21-r1.ebuild +++ b/media-libs/gstreamer/gstreamer-0.10.21-r3.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2008 Gentoo Foundation +# Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/gstreamer/gstreamer-0.10.21-r1.ebuild,v 1.3 2008/12/31 03:30:47 mr_bones_ Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/gstreamer/gstreamer-0.10.21-r3.ebuild,v 1.1 2009/01/09 12:54:19 loki_val Exp $ EAPI=2 @@ -30,7 +30,8 @@ src_prepare() { # Needed for sane .so versioning on Gentoo/FreeBSD #elibtoolize epatch "${FILESDIR}"/${P}-gtkdoc.patch \ - "${FILESDIR}"/${P}-bison241.patch + "${FILESDIR}"/${P}-bison241.patch \ + "${FILESDIR}"/${P}-b.g.o-555631.patch AT_M4DIR="common/m4" eautoreconf } |