Add patch to make sure the mutex is locked before trying to unlock it.

This fixes a startup crash in cheese 3.12.

Submitted by:	Gustau Perez
Obtained from:	Gstreamer upstream
This commit is contained in:
Koop Mast 2014-04-20 10:36:47 +00:00
parent a2db3289fa
commit 8e1e5218b5
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=351618
2 changed files with 30 additions and 2 deletions

View file

@ -4,6 +4,7 @@
PORTNAME= gstreamer1
PORTVERSION= 1.2.3
PORTREVISION= 1
CATEGORIES= multimedia
MASTER_SITES= http://gstreamer.freedesktop.org/src/gstreamer/
DISTNAME= ${PORTNAME:S/1//}-${PORTVERSION}
@ -16,8 +17,7 @@ LICENSE= LGPL20
PORTSCOUT= limitw:1,even
CFLAGS:= ${CFLAGS} -O2 -Wno-format
USES= bison gettext gmake libtool pathfix pkgconfig
USE_XZ= yes
USES= bison gettext gmake libtool pathfix pkgconfig tar:xz
USE_GNOME= glib20 gnomehier introspection:build
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-tests \

View file

@ -0,0 +1,28 @@
From 63c17280408410d799e1c2f2ed49c5ab04cc80ae Mon Sep 17 00:00:00 2001
From: Sebastian Dröge <sebastian@centricular.com>
Date: Sun, 20 Apr 2014 09:59:02 +0000
Subject: basesrc: Make sure to always hold the LIVE_LOCK when going to the flushing label
https://bugzilla.gnome.org/show_bug.cgi?id=728596
---
diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c
index 9f2e52c..fc5a3af 100644
--- libs/gst/base/gstbasesrc.c
+++ libs/gst/base/gstbasesrc.c
@@ -2684,10 +2684,12 @@ gst_base_src_loop (GstPad * pad)
if (gst_pad_check_reconfigure (pad)) {
if (!gst_base_src_negotiate (src)) {
gst_pad_mark_reconfigure (pad);
- if (GST_PAD_IS_FLUSHING (pad))
+ if (GST_PAD_IS_FLUSHING (pad)) {
+ GST_LIVE_LOCK (src);
goto flushing;
- else
+ } else {
goto negotiate_failed;
+ }
}
}
--
cgit v0.9.0.2-2-gbebe