Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Sep 2016 17:30:23 +0000 (UTC)
From:      Koop Mast <kwm@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r422217 - in head/multimedia/gstreamer1-plugins-bad: . files
Message-ID:  <201609151730.u8FHUN1e082014@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kwm
Date: Thu Sep 15 17:30:23 2016
New Revision: 422217
URL: https://svnweb.freebsd.org/changeset/ports/422217

Log:
  Fix a runtime issue which causes the program to SIGABRT when it happens.
  
  PR:		212461
  Submitted by:	cpm@
  Obtained from:	gstreamer upstream
  MFH:		2016Q3

Added:
  head/multimedia/gstreamer1-plugins-bad/files/
  head/multimedia/gstreamer1-plugins-bad/files/patch-3aee203   (contents, props changed)
Modified:
  head/multimedia/gstreamer1-plugins-bad/Makefile

Modified: head/multimedia/gstreamer1-plugins-bad/Makefile
==============================================================================
--- head/multimedia/gstreamer1-plugins-bad/Makefile	Thu Sep 15 16:40:17 2016	(r422216)
+++ head/multimedia/gstreamer1-plugins-bad/Makefile	Thu Sep 15 17:30:23 2016	(r422217)
@@ -1,7 +1,7 @@
 # Created by: Michael Johnson <ahze@FreeBSD.org>
 # $FreeBSD$
 
-PORTREVISION=	0
+PORTREVISION=	1
 CATEGORIES=	multimedia
 
 COMMENT=	GStreamer-plugins that need more quality, testing or documentation

Added: head/multimedia/gstreamer1-plugins-bad/files/patch-3aee203
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/multimedia/gstreamer1-plugins-bad/files/patch-3aee203	Thu Sep 15 17:30:23 2016	(r422217)
@@ -0,0 +1,55 @@
+From 3aee2039591421f4cc8757353034daf0e011a9ce Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
+Date: Thu, 31 Mar 2016 12:20:30 +0300
+Subject: adaptivedemux: Handle find_stream_for_pad() without
+ g_assert_not_reached() if no pad is found
+
+Happens e.g. if a RECONFIGURE event is sent from downstream while we're
+switching pads at this very moment. The old pad is gone and the stream has a
+new pad.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=764404
+
+diff --git a/gst-libs/gst/adaptivedemux/gstadaptivedemux.c b/gst-libs/gst/adaptivedemux/gstadaptivedemux.c
+index dfe7ba7..ba29214 100644
+--- gst-libs/gst/adaptivedemux/gstadaptivedemux.c
++++ gst-libs/gst/adaptivedemux/gstadaptivedemux.c
+@@ -1092,7 +1092,6 @@ gst_adaptive_demux_find_stream_for_pad (GstAdaptiveDemux * demux, GstPad * pad)
+       return stream;
+     }
+   }
+-  g_assert_not_reached ();
+   return NULL;
+ }
+ 
+@@ -1241,6 +1240,7 @@ gst_adaptive_demux_src_event (GstPad * pad, GstObject * parent,
+       gboolean update;
+       gboolean ret = TRUE;
+       GstSegment oldsegment;
++      GstAdaptiveDemuxStream *stream = NULL;
+ 
+       GST_INFO_OBJECT (demux, "Received seek event");
+ 
+@@ -1318,9 +1318,8 @@ gst_adaptive_demux_src_event (GstPad * pad, GstObject * parent,
+        * use the one that received the event as the 'leading'
+        * one to do the snap seek.
+        */
+-      if (IS_SNAP_SEEK (flags) && demux_class->stream_seek) {
+-        GstAdaptiveDemuxStream *stream =
+-            gst_adaptive_demux_find_stream_for_pad (demux, pad);
++      if (IS_SNAP_SEEK (flags) && demux_class->stream_seek && (stream =
++              gst_adaptive_demux_find_stream_for_pad (demux, pad))) {
+         GstClockTime ts;
+         GstSeekFlags stream_seek_flags = flags;
+ 
+@@ -1359,6 +1358,7 @@ gst_adaptive_demux_src_event (GstPad * pad, GstObject * parent,
+         GST_DEBUG_OBJECT (demux, "Adapted snap seek to %" GST_PTR_FORMAT,
+             event);
+       }
++      stream = NULL;
+ 
+       gst_segment_do_seek (&demux->segment, rate, format, flags, start_type,
+           start, stop_type, stop, &update);
+-- 
+cgit v0.10.2
+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201609151730.u8FHUN1e082014>