From ec3f58500066edee259942057e21489621fca9dd Mon Sep 17 00:00:00 2001 From: Hamsalekha S Date: Tue, 23 May 2017 15:54:18 +0530 Subject: [PATCH] Fixed hang in the case of multiple sps id. The sps parameters used to detect change in resolution/sps were incorrect. Made a fix to use current sps from decoder context. Bug: 38239864 Change-Id: I2d110e635ced32b3dc7f364e08a97d672fcbae37 (cherry picked from commit 8c6fe35f6d28f3e8c3a9f9458eea89eba858bded) --- decoder/ih264d_parse_headers.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/decoder/ih264d_parse_headers.c b/decoder/ih264d_parse_headers.c index ec57874..9d835f7 100644 --- a/decoder/ih264d_parse_headers.c +++ b/decoder/ih264d_parse_headers.c @@ -564,7 +564,10 @@ WORD32 ih264d_parse_sps(dec_struct_t *ps_dec, dec_bit_stream_t *ps_bitstrm) /*--------------------------------------------------------------------*/ ps_seq = ps_dec->pv_scratch_sps_pps; - *ps_seq = ps_dec->ps_sps[u1_seq_parameter_set_id]; + if(ps_dec->i4_header_decoded & 1) + { + *ps_seq = *ps_dec->ps_cur_sps; + } if(NULL == ps_dec->ps_cur_sps) ps_dec->ps_cur_sps = ps_seq;