diff options
author | Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> | 2015-09-11 16:49:16 +0200 |
---|---|---|
committer | Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> | 2015-09-22 13:42:27 +0200 |
commit | f26a9a7a4bbaa9d6d585b997f6cd0d3293e406f9 (patch) | |
tree | 4d204b526ca5aeec4247431c8f0778b226da8be7 | |
parent | b69d2279dc992eea3be48423007053cbf69dfeac (diff) |
decoder: h264: initialize PPS's slice_group_id
When the GstVaapiParserInfoH264 is allocated, the memory is not initialized,
so it contains random data.
When gst_h264_parser_parse_pps() fails, the PPS structure keeps slice_group_id
pointer uninitialized, leading to a segmentation fault when the memory is
freed.
This patch prevents this by initializing the slice_group_id before the PPS
parsing.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=754845
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapidecoder_h264.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapidecoder_h264.c b/gst-libs/gst/vaapi/gstvaapidecoder_h264.c index 677e73b7..ce64c417 100644 --- a/gst-libs/gst/vaapi/gstvaapidecoder_h264.c +++ b/gst-libs/gst/vaapi/gstvaapidecoder_h264.c @@ -1685,6 +1685,7 @@ parse_pps(GstVaapiDecoderH264 *decoder, GstVaapiDecoderUnit *unit) standard but that should get a default value anyway */ pps->slice_group_map_type = 0; pps->slice_group_change_rate_minus1 = 0; + pps->slice_group_id = NULL; result = gst_h264_parser_parse_pps(priv->parser, &pi->nalu, pps); if (result != GST_H264_PARSER_OK) |