mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-25 01:30:38 +00:00
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:
parent
74346080ba
commit
538e2ef1d0
1 changed files with 2 additions and 0 deletions
|
@ -1233,6 +1233,7 @@ read_rtp_header_extensions (GstRTPBaseDepayload * depayload,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ext) {
|
if (ext) {
|
||||||
|
GST_OBJECT_LOCK (ext);
|
||||||
if (!gst_rtp_header_extension_read (ext, ext_flags, &pdata[offset],
|
if (!gst_rtp_header_extension_read (ext, ext_flags, &pdata[offset],
|
||||||
read_len, output)) {
|
read_len, output)) {
|
||||||
GST_WARNING_OBJECT (depayload, "RTP header extension (%s) could "
|
GST_WARNING_OBJECT (depayload, "RTP header extension (%s) could "
|
||||||
|
@ -1246,6 +1247,7 @@ read_rtp_header_extensions (GstRTPBaseDepayload * depayload,
|
||||||
needs_src_caps_update = TRUE;
|
needs_src_caps_update = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GST_OBJECT_UNLOCK (ext);
|
||||||
gst_object_unref (ext);
|
gst_object_unref (ext);
|
||||||
}
|
}
|
||||||
GST_OBJECT_UNLOCK (depayload);
|
GST_OBJECT_UNLOCK (depayload);
|
||||||
|
|
Loading…
Reference in a new issue