Merge "Fix for stack over flow write in drc set pre selection" into pi-dev

This commit is contained in:
Ray Essick 2018-10-29 22:08:57 +00:00 committed by Android (Google) Code Review
commit 3ddab42b81
2 changed files with 7 additions and 1 deletions

View file

@ -151,6 +151,8 @@ extern "C" {
#define PARAM_DRC_TYPE_LIM_ATTACK_DEFAULT 5
#define PARAM_DRC_TYPE_LIM_RELEASE_DEFAULT 50
#define MAX_LOUDNESS_INFO_COUNT (16)
#define UNIDRCCONFEXT_V1 0x2
#define UNIDRCLOUDEXT_EQ 0x1
#define UNIDRCINTERFACEEXT_EQ 0x1

View file

@ -775,6 +775,9 @@ WORD32 impd_drc_set_preselection(
loudness_normalization_gain_db, loudness);
if (err) return (err);
if (loudness_info_count > MAX_LOUDNESS_INFO_COUNT)
return UNEXPECTED_ERROR;
err = impd_signal_peak_level_info(
pstr_drc_config, pstr_loudness_info, str_drc_instruction_str,
requested_dwnmix_id[d],
@ -787,6 +790,7 @@ WORD32 impd_drc_set_preselection(
for (l = 0; l < loudness_info_count; l++) {
WORD32 match_found_flag = 0;
WORD32 p;
if (k >= SELECTION_CANDIDATE_COUNT_MAX) return UNEXPECTED_ERROR;
selection_candidate_info[k].loudness_norm_db_gain_adjusted =
loudness_normalization_gain_db[l];
@ -873,7 +877,6 @@ WORD32 impd_drc_set_preselection(
!str_drc_instruction_str
->drc_set_target_loudness_present)) {
k++;
} else {
}
}
}
@ -913,6 +916,7 @@ WORD32 impd_drc_set_preselection(
signal_peak_level[p] + loudness_normalization_gain_db[l] -
pstr_drc_sel_proc_params_struct->output_peak_level_max);
adjustment = min(adjustment, max(0.0f, loudness_deviation_max));
if (k >= SELECTION_CANDIDATE_COUNT_MAX) return UNEXPECTED_ERROR;
selection_candidate_info[k].loudness_norm_db_gain_adjusted =
loudness_normalization_gain_db[l] - adjustment;