diff options
author | Hamsalekha S <hamsalekha.s@ittiam.com> | 2017-05-12 20:56:41 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-05-12 20:56:41 +0000 |
commit | 0f6a1883e8fa015aebb3dae94b07547d73abbd71 (patch) | |
tree | 6d44df39fe57d0cf3aa1d398917911cc3ed554b4 /decoder/ih264d_parse_headers.c | |
parent | 126058dcb27332aba7de6449f95f237b5027e0c5 (diff) | |
parent | 62f98981ffc29082dd4bbf173a043a5bcbb86652 (diff) | |
download | libavc-0f6a1883e8fa015aebb3dae94b07547d73abbd71.tar.gz |
Decoder: Added an error check while parsing PPS.
am: 62f98981ff
Change-Id: I2976869f34cf2a20078c3fe4504db9e6c5a3035d
Diffstat (limited to 'decoder/ih264d_parse_headers.c')
-rw-r--r-- | decoder/ih264d_parse_headers.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/decoder/ih264d_parse_headers.c b/decoder/ih264d_parse_headers.c index 58234f9..068ee5b 100644 --- a/decoder/ih264d_parse_headers.c +++ b/decoder/ih264d_parse_headers.c @@ -361,11 +361,13 @@ WORD32 ih264d_parse_pps(dec_struct_t * ps_dec, dec_bit_stream_t * ps_bitstrm) } /* read second_chroma_qp_index_offset syntax element */ - ps_pps->i1_second_chroma_qp_index_offset = ih264d_sev( + i_temp = ih264d_sev( pu4_bitstrm_ofst, pu4_bitstrm_buf); - if((ps_pps->i1_second_chroma_qp_index_offset + 12) > 24) + if((i_temp < -12) || (i_temp > 12)) return ERROR_INV_RANGE_QP_T; + + ps_pps->i1_second_chroma_qp_index_offset = i_temp; } /* In case bitstream read has exceeded the filled size, then |