codecs: h265: Do not free slice header before using it
authorDetlev Casanova <detlev.casanova@collabora.com>
Tue, 17 Oct 2023 16:42:59 +0000 (12:42 -0400)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Wed, 18 Oct 2023 00:17:54 +0000 (00:17 +0000)
commit99435dc4993c7d5abdd1833ff67f6f6fbd1ae2e7
treeb75a27f645508ababe41780e77f7442058064847
parentb2c7e8549c39072ae753c29a967fc175e33ff7ad
codecs: h265: Do not free slice header before using it

The v4l2codecs H.265 decoder uses the
GstH265SliceHdr::entry_point_offset_minus1 array so make sure that it is not
freed before decoding the frame.

Before this patch, some H.265 input would segfault in
gst_v4l2_codec_h265_dec_fill_slice_params() when executing the line:

guint32 entry_point_offset = slice_hdr->entry_point_offset_minus1[i] + 1;

Make sure that the array is not freed before using it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5503>
subprojects/gst-plugins-bad/gst-libs/gst/codecs/gsth265decoder.c