gstreamer/gst
Sebastian Dröge 7b22397cf5 rtpjitterbuffer: Properly free internal packets queue in finalize()
As we override the GLib item with our own structure, we cannot use any
function from GList or GQueue that would try to free the RTPJitterBufferItem.
In this patch, we move away from g_queue_new() which forces using
g_queue_free(). This this function could use g_slice_free() if there is any items
left in the queue. Passing the wrong size to GSLice may cause data corruption
and crash.

A better approach would be to use a proper intrusive linked list
implementation but that's left as an exercise for the next person
running into crashes caused by this.

Be ware that this regression was introduced 6 years ago in the following
commit [0], the call to flush() looked useless, as there was a g_queue_free()
afterward.

Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>

[0] 479c7642fd

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/573>
2020-04-22 10:28:30 -04:00
..
alpha alpha: Cleanup using G_DECLARE_FINAL_TYPE 2019-12-28 04:05:13 +00:00
apetag Remove autotools build system 2019-10-14 11:04:18 +01:00
audiofx Remove autotools build system 2019-10-14 11:04:18 +01:00
audioparsers mpegaudioparse: Use a constant bit rate to convert between time and bytes if possible. 2020-03-19 14:02:44 +00:00
auparse Remove autotools build system 2019-10-14 11:04:18 +01:00
autodetect Remove autotools build system 2019-10-14 11:04:18 +01:00
avi avimux: Add support for >2 raw audio channels 2020-01-19 12:09:38 +00:00
cutter Remove autotools build system 2019-10-14 11:04:18 +01:00
debugutils good: Avoid usage of deprecated API 2019-10-16 07:46:58 +00:00
deinterlace deinterlace: add alternate support 2020-03-03 17:15:00 +00:00
dtmf Remove autotools build system 2019-10-14 11:04:18 +01:00
effectv Remove autotools build system 2019-10-14 11:04:18 +01:00
equalizer Remove autotools build system 2019-10-14 11:04:18 +01:00
flv flvdemux: Don't write an empty string as a tag 2020-04-08 20:22:51 +03: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: handle reconfigure events on the srcpad 2020-03-10 21:22:20 +11:00
interleave Remove autotools build system 2019-10-14 11:04:18 +01:00
isomp4 qtmux: Add property for enforcing the creation of chunks in single-stream files 2020-04-06 16:25:59 +03:00
law Remove autotools build system 2019-10-14 11:04:18 +01:00
level Remove autotools build system 2019-10-14 11:04:18 +01:00
matroska matroska: Check the return value of gst_segment_do_seek() 2020-04-02 05:23:17 +00:00
monoscope Remove autotools build system 2019-10-14 11:04:18 +01:00
multifile splitmuxsink: Enhancement for timecode based split 2020-04-20 21:39:49 +09: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 rtpLXXdepay: Set the UNPOSITIONED flag on the audio-info when configuring an unpositioned layout 2020-04-03 17:57:23 +00:00
rtpmanager rtpjitterbuffer: Properly free internal packets queue in finalize() 2020-04-22 10:28:30 -04:00
rtsp rtspsrc: Properly set segments seqnums after seeks 2020-04-09 14:03:04 -04:00
shapewipe Remove autotools build system 2019-10-14 11:04:18 +01:00
smpte Remove autotools build system 2019-10-14 11:04:18 +01:00
spectrum Remove autotools build system 2019-10-14 11:04:18 +01:00
udp Don't pass default GLib marshallers for signals 2019-11-17 15:32:30 +00:00
videobox Remove autotools build system 2019-10-14 11:04:18 +01:00
videocrop Fix usage of C99 2020-03-23 21:32:04 -04:00
videofilter Remove autotools build system 2019-10-14 11:04:18 +01:00
videomixer videomixer: Don't leak peer caps 2020-03-12 11:22:56 +01:00
wavenc wavenc: Fix writing of the channel mask with >2 channels 2020-01-13 19:50:06 +00:00
wavparse Remove autotools build system 2019-10-14 11:04:18 +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