Merge cherrypicks of [3276508, 3277765, 3277766, 3277904, 3276473, 3278009, 3278010, 3277767, 3277768, 3277769, 3277770, 3276509, 3276510, 3278011, 3278012, 3278013, 3278014, 3278099, 3278100, 3278101, 3278102, 3278103, 3278104, 3278105, 3278106, 3277800, 3276474, 3278015, 3278016, 3278017, 3278118, 3278119, 3278120, 3278121, 3278122, 3277946, 3277905, 3277947, 3277906, 3277751, 3278123, 3277752, 3278110, 3277771, 3277907, 3278095, 3277908, 3278111, 3277772, 3276475, 3276476] into oc-mr1-release
Change-Id: I779072831c2d73968744e61868541055adb7262b
diff --git a/decoder/impeg2d_dec_hdr.c b/decoder/impeg2d_dec_hdr.c
index aa3c70f..7a4d522 100644
--- a/decoder/impeg2d_dec_hdr.c
+++ b/decoder/impeg2d_dec_hdr.c
@@ -712,6 +712,11 @@
if(ps_dec->u2_is_mpeg2 == 0)
{
+ if (ps_dec->u2_forw_f_code < 1 || ps_dec->u2_forw_f_code > 7 ||
+ ps_dec->u2_back_f_code < 1 || ps_dec->u2_back_f_code > 7)
+ {
+ return IMPEG2D_UNKNOWN_ERROR;
+ }
ps_dec->au2_f_code[0][0] = ps_dec->au2_f_code[0][1] = ps_dec->u2_forw_f_code;
ps_dec->au2_f_code[1][0] = ps_dec->au2_f_code[1][1] = ps_dec->u2_back_f_code;
}
diff --git a/decoder/impeg2d_pic_proc.c b/decoder/impeg2d_pic_proc.c
index fbbbf79..6826def 100644
--- a/decoder/impeg2d_pic_proc.c
+++ b/decoder/impeg2d_pic_proc.c
@@ -271,6 +271,8 @@
ps_dec->u2_progressive_frame = 1;
ps_dec->u2_frame_rate_extension_n = 0;
ps_dec->u2_frame_rate_extension_d = 0;
+ ps_dec->u2_forw_f_code = 7;
+ ps_dec->u2_back_f_code = 7;
ps_dec->pf_vld_inv_quant = impeg2d_vld_inv_quant_mpeg1;
/*-------------------------------------------------------------------*/