[Android GMS 認證] STS 問題列表之 android.security.cts.StagefrightTest#testStagefright_bug_63522067
-m CtsSecurityTestCases -t android.security.cts.StagefrightTest#testStagefright_bug_63522067
需要打如下patch:
diff --git a/decoder/ihevcd_decode.c b/decoder/ihevcd_decode.c
index 83f9b42..d2ea7a5 100755
--- a/decoder/ihevcd_decode.c
+++ b/decoder/ihevcd_decode.c
@@ -670,7 +670,6 @@ WORD32 ihevcd_decode(iv_obj_t *ps_codec_obj, void *pv_api_ip, void *pv_api_op)
if(IHEVCD_IGNORE_SLICE == ret)
{
- ps_codec->s_parse.i4_cur_slice_idx = MAX(0, (ps_codec->s_parse.i4_cur_slice_idx - 1));
ps_codec->pu1_inp_bitsbuf += (nal_ofst + nal_len);
ps_codec->i4_bytes_remaining -= (nal_ofst + nal_len);
diff --git a/decoder/ihevcd_parse_headers.c b/decoder/ihevcd_parse_headers.c
index b8ed252..fd8712b 100755
--- a/decoder/ihevcd_parse_headers.c
+++ b/decoder/ihevcd_parse_headers.c
@@ -2623,20 +2621,8 @@ void ihevcd_parse_sei_payload(codec_t *ps_codec,
case SEI_USER_DATA_REGISTERED_ITU_T_T35:
ps_parse->s_sei_params.i1_sei_parameters_present_flag = 1;
- if(ps_parse->s_sei_params.i4_sei_user_data_cnt >= USER_DATA_MAX)
- {
- for(i = 0; i < u4_payload_size / 4; i++)
- {
- ihevcd_bits_flush(ps_bitstrm, 4 * 8);
- }
-
- ihevcd_bits_flush(ps_bitstrm, (u4_payload_size - i * 4) * 8);
- }
- else
- {
- ihevcd_parse_user_data_registered_itu_t_t35(ps_codec,
- u4_payload_size);
- }
+ ihevcd_parse_user_data_registered_itu_t_t35(ps_codec,
+ u4_payload_size);
break;
default:
@@ -2653,20 +2639,8 @@ void ihevcd_parse_sei_payload(codec_t *ps_codec,
{
case SEI_USER_DATA_REGISTERED_ITU_T_T35:
ps_parse->s_sei_params.i1_sei_parameters_present_flag = 1;
- if(ps_parse->s_sei_params.i4_sei_user_data_cnt >= USER_DATA_MAX)
- {
- for(i = 0; i < u4_payload_size / 4; i++)
- {
- ihevcd_bits_flush(ps_bitstrm, 4 * 8);
- }
-
- ihevcd_bits_flush(ps_bitstrm, (u4_payload_size - i * 4) * 8);
- }
- else
- {
- ihevcd_parse_user_data_registered_itu_t_t35(ps_codec,
- u4_payload_size);
- }
+ ihevcd_parse_user_data_registered_itu_t_t35(ps_codec,
+ u4_payload_size);
break;