summaryrefslogtreecommitdiffstats
path: root/decoder/ih264d_parse_pslice.c
diff options
context:
space:
mode:
authorNaveen Kumar Ponnusamy <naveenkumar.p@ittiam.com>2015-12-04 16:51:43 +0530
committerWei Jia <wjia@google.com>2016-01-13 21:18:46 +0000
commit943323f1d9d3dd5c2634deb26cbe72343ca6b3db (patch)
tree3fe813a14c70af76003b49e6764d481cd36c400c /decoder/ih264d_parse_pslice.c
parent4a524d3a8ae9aa20c36430008e6bd429443f8f1d (diff)
downloadandroid_external_libavc-943323f1d9d3dd5c2634deb26cbe72343ca6b3db.tar.gz
android_external_libavc-943323f1d9d3dd5c2634deb26cbe72343ca6b3db.tar.bz2
android_external_libavc-943323f1d9d3dd5c2634deb26cbe72343ca6b3db.zip
Return error when there are more mmco params than allocated size
Bug: 25818142 Change-Id: I5c1b23985eeca5192b42703c627ca3d060e4e13d
Diffstat (limited to 'decoder/ih264d_parse_pslice.c')
-rw-r--r--decoder/ih264d_parse_pslice.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/decoder/ih264d_parse_pslice.c b/decoder/ih264d_parse_pslice.c
index a82b0f8..3cac387 100644
--- a/decoder/ih264d_parse_pslice.c
+++ b/decoder/ih264d_parse_pslice.c
@@ -2057,7 +2057,14 @@ WORD32 ih264d_parse_pslice(dec_struct_t *ps_dec, UWORD16 u2_first_mb_in_slice)
if(ps_cur_slice->u1_nal_ref_idc != 0)
{
if(!ps_dec->ps_dpb_cmds->u1_dpb_commands_read)
- ps_dec->u4_bitoffset = ih264d_read_mmco_commands(ps_dec);
+ {
+ i_temp = ih264d_read_mmco_commands(ps_dec);
+ if (i_temp < 0)
+ {
+ return ERROR_DBP_MANAGER_T;
+ }
+ ps_dec->u4_bitoffset = i_temp;
+ }
else
ps_bitstrm->u4_ofst += ps_dec->u4_bitoffset;