aboutsummaryrefslogtreecommitdiff
path: root/decoder
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2020-03-20 02:58:26 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-03-20 02:58:26 +0000
commitc5053a6a4629220e36e0da5ffa9ee9c3bdb3a6cf (patch)
tree9b3f86aa94db1889de54737c9277ef241d5417a0 /decoder
parent92608dc6448111c115163ccb96176a44e72ae3f7 (diff)
parentbab21d5cb97ef32de8307b39febd1397e0e3ed05 (diff)
downloadlibhevc-c5053a6a4629220e36e0da5ffa9ee9c3bdb3a6cf.tar.gz
Merge "decoder: Return error if first slice decoded in a frame is dependent slice" into qt-qpr1-dev am: bab21d5cb9
Change-Id: I0820b88370622fa3e379032ba7717dbea1834c6f
Diffstat (limited to 'decoder')
-rw-r--r--decoder/ihevcd_parse_slice_header.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/decoder/ihevcd_parse_slice_header.c b/decoder/ihevcd_parse_slice_header.c
index 46f2f5f..23d5030 100644
--- a/decoder/ihevcd_parse_slice_header.c
+++ b/decoder/ihevcd_parse_slice_header.c
@@ -325,6 +325,12 @@ IHEVCD_ERROR_T ihevcd_parse_slice_header(codec_t *ps_codec,
{
BITS_PARSE("dependent_slice_flag", value, ps_bitstrm, 1);
+ /* First slice to be decoded in the current picture can't be dependent slice */
+ if (value && 0 == ps_codec->i4_pic_present)
+ {
+ return IHEVCD_IGNORE_SLICE;
+ }
+
/* If dependendent slice, copy slice header from previous slice */
if(value && (ps_codec->s_parse.i4_cur_slice_idx > 0))
{