gstreamer/plugins/elements
Stian Selnes d03bd54780 queue: Fix race when calculating cur_level.time
On the first buffer, it's possible that sink_segment is set but
src_segment has not been set yet. If this is the case, we should not
calculate cur_level.time since sink_segment.position may be large and
src_segment.position default is 0, with the resulting diff being larger
than max-size-time, causing the queue to start leaking (if
leaky=downstream).

One potential consequence of this is that the segment event may be
stored on the srcpad before the caps event is pushed downstream, causing
a g_warning ("Sticky event misordering, got 'segment' before 'caps'").

https://bugzilla.gnome.org/show_bug.cgi?id=773096
2016-10-20 14:14:20 +03:00
..
.gitignore ignore more 2005-06-17 09:12:33 +00:00
gstcapsfilter.c capsfilter: optimisation: avoid unnecessary gst_pad_has_current_caps() checks 2016-03-24 14:48:40 +02:00
gstcapsfilter.h capsfilter: optimisation: avoid unnecessary gst_pad_has_current_caps() checks 2016-03-24 14:48:40 +02:00
gstconcat.c concat: Fix comment typo 2016-03-14 12:23:12 +02:00
gstconcat.h concat: Add adjust-base property 2015-06-22 14:11:30 +02:00
gstdownloadbuffer.c Make use of the new GST_ELEMENT_FLOW_ERROR API all around. 2016-08-27 09:33:20 -03:00
gstdownloadbuffer.h sparsefile: keep it private as helper API for downloadbuffer 2014-05-13 20:05:55 +01:00
gstelements.c streamiddemux: Add streamiddemux element 2015-03-12 14:42:18 +00:00
gstelements_private.c gst_writev: define UIO_MAXIOV on iOS/OSX 2015-06-11 23:06:26 +01:00
gstelements_private.h plugins: add helper function for writing buffers out with writev() 2014-11-30 14:40:46 +00:00
gstfakesink.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstfakesink.h Revert "Potential GstContext regression" 2013-09-24 12:47:52 +02:00
gstfakesrc.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstfakesrc.h fakesrc: removing unused pattern option 2014-10-02 13:45:34 +01:00
gstfdsink.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstfdsink.h fdsink: implement ::render_list() using writev() 2014-11-30 14:40:46 +00:00
gstfdsrc.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstfdsrc.h Fix FSF address 2012-11-03 20:44:48 +00:00
gstfilesink.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstfilesink.h filesink: indentation fixes 2015-12-09 14:15:26 -08:00
gstfilesrc.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstfilesrc.h Fix FSF address 2012-11-03 20:44:48 +00:00
gstfunnel.c funnel: Only forward sticky events on GAP events if needed 2016-07-07 13:32:39 +03:00
gstfunnel.h funnel: add "forward-sticky-events" property 2015-06-25 10:53:55 +02:00
gstidentity.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstidentity.h identity: add drop-buffer-flags property 2015-11-13 07:37:12 -08:00
gstinputselector.c inputselector: Handle stream-group-done 2016-07-25 20:22:20 +10:00
gstinputselector.h inputselector: Only try to push the first EOS received 2015-04-24 17:19:49 -03:00
gstmultiqueue.c multiqueue: Add higher-resolution low/high-watermark properties 2016-08-31 12:56:19 +03:00
gstmultiqueue.h multiqueue: Distinguish between buffering percentage and buffering level 2016-08-31 12:56:19 +03:00
gstoutputselector.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gstoutputselector.h docs: add missing docs, fixing doc errors 2013-12-03 00:11:59 +00:00
gstqueue.c queue: Fix race when calculating cur_level.time 2016-10-20 14:14:20 +03:00
gstqueue.h queue: Use full running time for level calculation 2016-03-24 14:42:31 +02:00
gstqueue2.c queue2: Implement gst_event_full_func handling 2016-10-08 13:56:18 +02:00
gstqueue2.h queue2: Add higher-resolution low/high-watermark properties 2016-08-25 11:54:33 +03:00
gstsparsefile.c sparsefile: drop bogus reference to file descriptor 2015-12-12 13:13:54 -08:00
gstsparsefile.h elements: don't depend on libgio just for g_io_error_from_errno() 2014-05-13 20:06:48 +01:00
gststreamiddemux.c elements: use new gst_element_class_add_static_pad_template() 2016-02-28 13:10:07 +00:00
gststreamiddemux.h docs: add StreamidDemux to documentation 2015-07-08 17:07:49 +01:00
gsttee.c tee: Properly handle return value when only 1 pad 2016-06-17 13:03:20 +03:00
gsttee.h tee: Add allow-not-linked property 2015-03-26 10:46:26 +01:00
gsttypefindelement.c Make use of the new GST_ELEMENT_FLOW_ERROR API all around. 2016-08-27 09:33:20 -03:00
gsttypefindelement.h docs: order and canonicalize the -sections.txt file 2015-07-03 11:52:22 +02:00
gstvalve.c valve: don't send sticky events as a direct response to upstream events 2016-03-24 14:50:50 +02:00
gstvalve.h Fix FSF address 2012-11-03 20:44:48 +00:00
Makefile.am Remove obsolete Android build cruft 2015-04-26 17:49:44 +01:00
meson.build Add support for Meson as alternative/parallel build system 2016-08-19 21:26:14 +01:00