rtpbasedepay: fix locking of GstRTPHeaderExtension

'ext' object unlocked if gst_rtp_header_extension_read() fails was never
locked in the first place.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1118>
This commit is contained in:
Jakub Adam 2021-04-21 17:18:51 +02:00
parent 74346080ba
commit 538e2ef1d0

View file

@ -1233,6 +1233,7 @@ read_rtp_header_extensions (GstRTPBaseDepayload * depayload,
}
if (ext) {
GST_OBJECT_LOCK (ext);
if (!gst_rtp_header_extension_read (ext, ext_flags, &pdata[offset],
read_len, output)) {
GST_WARNING_OBJECT (depayload, "RTP header extension (%s) could "
@ -1246,6 +1247,7 @@ read_rtp_header_extensions (GstRTPBaseDepayload * depayload,
needs_src_caps_update = TRUE;
}
GST_OBJECT_UNLOCK (ext);
gst_object_unref (ext);
}
GST_OBJECT_UNLOCK (depayload);