Fix for stack buffer overflow in ixheaacd_esbr_chirp_fac_calc.
We found that error return was not being handled properly in ixheaacd_applysbr() function. This led to a wrong value being propagated which led to a stack buffer overflow. Also, a flag for checking if any previous frames encountered a fatal error has been added to ensure that further processing of frames doesn't happen after encountering a fatal error. Bug:130219994 Bug:131307285 Test: vendor Change-Id: If7b3887afcb375dda292082438f61d156027b60e
This commit is contained in:
parent
bbe47acd49
commit
e34ec6918e
4 changed files with 10 additions and 6 deletions
|
|
@ -500,6 +500,7 @@ IA_ERRORCODE ixheaacd_applysbr(
|
|||
if (err || (ptr_header_data[k]->sync_state == SBR_NOT_INITIALIZED)) {
|
||||
WORD32 lr1 = ps_enable ? 2 : num_channels;
|
||||
ixheaacd_prepare_upsamp(ptr_header_data, pstr_sbr_channel, lr1);
|
||||
if (err) return err;
|
||||
}
|
||||
|
||||
if (frame_status && (ptr_header_data[k]->sync_state == SBR_ACTIVE)) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue