rtpbasedepayload: Fixes for cleanup of header ext. aggregation

* Free delayed buffer on _finalize()
* Reset header aggregation cache and delayed buffer on state change
  from READY_TO_PAUSE

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5278>
This commit is contained in:
Jochen Henneberg 2023-09-05 08:40:49 +02:00 committed by GStreamer Marge Bot
parent 372709400f
commit d9cd8b375e

View file

@ -463,9 +463,12 @@ static void
gst_rtp_base_depayload_finalize (GObject * object)
{
GstRTPBaseDepayload *rtpbasedepayload = GST_RTP_BASE_DEPAYLOAD (object);
GstRTPBaseDepayloadPrivate *priv = rtpbasedepayload->priv;
g_ptr_array_unref (rtpbasedepayload->priv->header_exts);
gst_clear_buffer_list (&rtpbasedepayload->priv->hdrext_buffers);
if (priv->hdrext_delayed)
gst_buffer_unref (priv->hdrext_delayed);
G_OBJECT_CLASS (parent_class)->finalize (object);
}