aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2024-05-11 20:50:44 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2024-05-13 03:40:16 +0200
commitc2d897f3566fdf5c190583c6f5197ead5abec2ed (patch)
tree1162514c93930bb07f2a324003560bd8e4954335
parentc304784a86cc7e2af211ed80ce2121e788680a8e (diff)
downloadffmpeg-c2d897f3566fdf5c190583c6f5197ead5abec2ed.tar.gz
avcodec/lpc: copy levenson coeffs only when they have been computed
Fixes: CID1473514 Uninitialized scalar variable Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/lpc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/lpc.c b/libavcodec/lpc.c
index 8305cc0596..dfd6114690 100644
--- a/libavcodec/lpc.c
+++ b/libavcodec/lpc.c
@@ -282,8 +282,10 @@ int ff_lpc_calc_coefs(LPCContext *s,
double av_uninit(weight);
memset(var, 0, FFALIGN(MAX_LPC_ORDER+1,4)*sizeof(*var));
- for(j=0; j<max_order; j++)
- m[0].coeff[max_order-1][j] = -lpc[max_order-1][j];
+ /* Avoids initializing with an unused value when lpc_passes == 1 */
+ if (lpc_passes > 1)
+ for(j=0; j<max_order; j++)
+ m[0].coeff[max_order-1][j] = -lpc[max_order-1][j];
for(; pass<lpc_passes; pass++){
avpriv_init_lls(&m[pass&1], max_order);