From 0328b1c14d079b3db1e4a84d945c7f9bb251aecf Mon Sep 17 00:00:00 2001 From: Stefan Bayer Date: Mon, 16 Oct 2023 11:39:10 +0200 Subject: [PATCH 1/2] fix #867, reallocate ParamMC CLDFB imaginary part buffer correctly, under define NONBE_FIX_867_PARAMC_RECONFIG --- lib_com/options.h | 1 + lib_dec/ivas_mc_param_dec.c | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/lib_com/options.h b/lib_com/options.h index 88a8a07572..932c886c6b 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -172,6 +172,7 @@ #define BE_FIX_832_ASAN_ERROR_EFAP_OSBA /* FhG: issue #832: fix ASAN error caused by re-allocating EFAP memories in OSBA*/ #define NONBE_FIX_819_DOUBLE_PREC_COMB_FORMATS /* VA: issue 820: Double precision arithmetic in combined formats */ #define NONBE_FIX_849_OMASA_BFI_CRASH /* VA: issue 849: fix OMASA 2TC and FEC crashes */ +#define NONBE_FIX_867_PARAMC_RECONFIG /* FhG: issue #867: fix ParamMC CLDFB buffer realloc */ #define NONBE_UNIFIED_DECODING_PATHS /* FhG: unify decoding paths */ diff --git a/lib_dec/ivas_mc_param_dec.c b/lib_dec/ivas_mc_param_dec.c index d6e7ade6fa..597de81b36 100644 --- a/lib_dec/ivas_mc_param_dec.c +++ b/lib_dec/ivas_mc_param_dec.c @@ -989,11 +989,19 @@ ivas_error ivas_param_mc_dec_reconfig( hParamMC->Cldfb_RealBuffer_tc = NULL; } +#ifdef NONBE_FIX_867_PARAMC_RECONFIG + if ( hParamMC->Cldfb_ImagBuffer_tc != NULL ) + { + free( hParamMC->Cldfb_ImagBuffer_tc ); + hParamMC->Cldfb_ImagBuffer_tc = NULL; + } +#else if ( hParamMC->Cldfb_RealBuffer_tc != NULL ) { free( hParamMC->Cldfb_RealBuffer_tc ); hParamMC->Cldfb_RealBuffer_tc = NULL; } +#endif n_cldfb_slots = DEFAULT_JBM_CLDFB_TIMESLOTS; if ( st_ivas->hDecoderConfig->Opt_tsm ) @@ -1019,12 +1027,19 @@ ivas_error ivas_param_mc_dec_reconfig( free( hParamMC->Cldfb_RealBuffer_tc ); hParamMC->Cldfb_RealBuffer_tc = NULL; } - +#ifdef NONBE_FIX_867_PARAMC_RECONFIG + if ( hParamMC->Cldfb_ImagBuffer_tc != NULL ) + { + free( hParamMC->Cldfb_ImagBuffer_tc ); + hParamMC->Cldfb_ImagBuffer_tc = NULL; + } +#else if ( hParamMC->Cldfb_RealBuffer_tc != NULL ) { free( hParamMC->Cldfb_RealBuffer_tc ); hParamMC->Cldfb_RealBuffer_tc = NULL; } +#endif } } #endif -- GitLab From ba33f9c8693215f664e2ad96744066e5282d60e5 Mon Sep 17 00:00:00 2001 From: Stefan Bayer Date: Mon, 16 Oct 2023 11:52:02 +0200 Subject: [PATCH 2/2] change fix for #867 to BE --- lib_com/options.h | 2 +- lib_dec/ivas_mc_param_dec.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index 932c886c6b..fb79d0a583 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -172,7 +172,7 @@ #define BE_FIX_832_ASAN_ERROR_EFAP_OSBA /* FhG: issue #832: fix ASAN error caused by re-allocating EFAP memories in OSBA*/ #define NONBE_FIX_819_DOUBLE_PREC_COMB_FORMATS /* VA: issue 820: Double precision arithmetic in combined formats */ #define NONBE_FIX_849_OMASA_BFI_CRASH /* VA: issue 849: fix OMASA 2TC and FEC crashes */ -#define NONBE_FIX_867_PARAMC_RECONFIG /* FhG: issue #867: fix ParamMC CLDFB buffer realloc */ +#define BE_FIX_867_PARAMC_RECONFIG /* FhG: issue #867: fix ParamMC CLDFB buffer dealloc when reconfiguring */ #define NONBE_UNIFIED_DECODING_PATHS /* FhG: unify decoding paths */ diff --git a/lib_dec/ivas_mc_param_dec.c b/lib_dec/ivas_mc_param_dec.c index 597de81b36..d11e846a84 100644 --- a/lib_dec/ivas_mc_param_dec.c +++ b/lib_dec/ivas_mc_param_dec.c @@ -989,7 +989,7 @@ ivas_error ivas_param_mc_dec_reconfig( hParamMC->Cldfb_RealBuffer_tc = NULL; } -#ifdef NONBE_FIX_867_PARAMC_RECONFIG +#ifdef BE_FIX_867_PARAMC_RECONFIG if ( hParamMC->Cldfb_ImagBuffer_tc != NULL ) { free( hParamMC->Cldfb_ImagBuffer_tc ); @@ -1027,7 +1027,7 @@ ivas_error ivas_param_mc_dec_reconfig( free( hParamMC->Cldfb_RealBuffer_tc ); hParamMC->Cldfb_RealBuffer_tc = NULL; } -#ifdef NONBE_FIX_867_PARAMC_RECONFIG +#ifdef BE_FIX_867_PARAMC_RECONFIG if ( hParamMC->Cldfb_ImagBuffer_tc != NULL ) { free( hParamMC->Cldfb_ImagBuffer_tc ); -- GitLab