gstreamer/gst
Nirbheek Chauhan 73fb107a85 rtspsrc: Fix accumulation of before-send signal return values
Since glib 2.62, the accumulated return values in RUN_CLEANUP override the
accumulated return values in RUN_FIRST. Since:

1. We have a default handler that always returns TRUE, and
2. User handlers are only run in RUN_FIRST, and
3. Our accumulator just takes the latest return value

We were discarding the return value from the user handler and always
sending messages even if the user handler said not to. See
https://gitlab.gnome.org/GNOME/glib/-/issues/2352 for more details.

This signal does not need RUN_CLEANUP or RUN_FIRST, so just change it
to RUN_LAST so that it's emitted exactly once and accumulated once.

With this fix, this signal can now be used to intercept PAUSE when
going to GST_STATE_NULL so that the server does a TEARDOWN (if
necessary) and not a PAUSE, which will confuse other RTSP clients when
playing shared media.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/909>
2021-03-17 14:05:44 +05:30
..
alpha plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-06 00:42:25 +02:00
apetag Remove autotools build system 2019-10-14 11:04:18 +01:00
audiofx meson: add update-orc-dist target 2020-07-04 15:04:59 +01:00
audioparsers aacparse: Fix caps change handling 2020-11-13 13:10:05 +00:00
auparse auparse: fix compiler warnings 2020-07-29 19:21:31 +03:00
autodetect autodetect: mark filter-caps property as DOC_SHOW_DEFAULT 2020-06-24 17:04:51 +02:00
avi avidemux: Avoid potential double-free 2020-05-06 04:36:46 +00:00
cutter Remove autotools build system 2019-10-14 11:04:18 +01:00
debugutils navseek: add hold_eos property 2020-11-01 15:19:46 +01:00
deinterlace deinterlace: Provide documentation for GST_DEINTERLACE_BUFFER_STATE 2021-02-03 17:10:20 +02:00
dtmf Remove autotools build system 2019-10-14 11:04:18 +01:00
effectv effectv: Remove redundant license file 2021-02-09 19:31:28 -05:00
equalizer docs: mark GstIirEqualizer as plugin API 2020-06-23 19:04:03 +02:00
flv flvmux: Release pads via GstAggregator 2020-11-02 08:46:21 +00:00
flx Remove autotools build system 2019-10-14 11:04:18 +01:00
goom Remove autotools build system 2019-10-14 11:04:18 +01:00
goom2k1 Remove autotools build system 2019-10-14 11:04:18 +01:00
icydemux Remove autotools build system 2019-10-14 11:04:18 +01:00
id3demux Remove autotools build system 2019-10-14 11:04:18 +01:00
imagefreeze imagefreeze: Response caps query from srcpad 2020-09-21 10:28:01 +03:00
interleave Remove autotools build system 2019-10-14 11:04:18 +01:00
isomp4 qtdemux: added support for cbcs encryption scheme 2021-02-04 12:30:22 +01:00
law Remove autotools build system 2019-10-14 11:04:18 +01:00
level level: add GstRTPAudioLevelMeta on buffers 2021-02-04 11:12:47 +01:00
matroska matroskademux: Fix extraction of multichannel WavPack 2021-03-15 12:34:49 +00:00
monoscope Remove autotools build system 2019-10-14 11:04:18 +01:00
multifile splitmuxsink: Avoid deadlock when releasing a pad from a running muxer 2020-12-16 06:17:08 +00:00
multipart good: use of g_value_dup_string 2019-12-20 09:30:26 +00:00
replaygain Remove autotools build system 2019-10-14 11:04:18 +01:00
rtp rtph264depay: expose request-keyframe property 2021-02-18 01:54:03 +00:00
rtpmanager rtpjitterbuffer: Fix parsing of the mediaclk:direct= field 2021-03-16 18:02:48 +00:00
rtsp rtspsrc: Fix accumulation of before-send signal return values 2021-03-17 14:05:44 +05:30
shapewipe Remove autotools build system 2019-10-14 11:04:18 +01:00
smpte plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-06 00:42:25 +02:00
spectrum Remove autotools build system 2019-10-14 11:04:18 +01:00
udp udpsrc: Fix marker links 2021-01-04 15:23:22 -05:00
videobox meson: add update-orc-dist target 2020-07-04 15:04:59 +01:00
videocrop Fix usage of C99 2020-03-23 21:32:04 -04:00
videofilter videoflip: fix possible crash when setting the video-direction while running 2021-01-04 12:10:12 +00:00
videomixer videomixer: document as deprecated 2021-02-18 01:48:24 +01:00
wavenc wavenc: Fixed INFO chunk corruption, caused by odd sized data not being padded. Code style was updated. 2021-02-17 09:54:40 +02:00
wavparse wavparse: fix seeking in READY state 2021-02-18 16:32:24 +01:00
y4m Remove autotools build system 2019-10-14 11:04:18 +01:00
meson.build meson: Add feature options for all plugins 2018-07-27 18:42:54 +05:30