Fixes an initialization issue in SILK prefill found by Coverity

This commit is contained in:
Jean-Marc Valin 2013-11-12 14:20:00 -05:00
parent 1d72d383ac
commit db5b19455f
2 changed files with 8 additions and 8 deletions

View file

@ -302,10 +302,6 @@ opus_int silk_encode_frame_FIX(
silk_memmove( psEnc->x_buf, &psEnc->x_buf[ psEnc->sCmn.frame_length ], silk_memmove( psEnc->x_buf, &psEnc->x_buf[ psEnc->sCmn.frame_length ],
( psEnc->sCmn.ltp_mem_length + LA_SHAPE_MS * psEnc->sCmn.fs_kHz ) * sizeof( opus_int16 ) ); ( psEnc->sCmn.ltp_mem_length + LA_SHAPE_MS * psEnc->sCmn.fs_kHz ) * sizeof( opus_int16 ) );
/* Parameters needed for next frame */
psEnc->sCmn.prevLag = sEncCtrl.pitchL[ psEnc->sCmn.nb_subfr - 1 ];
psEnc->sCmn.prevSignalType = psEnc->sCmn.indices.signalType;
/* Exit without entropy coding */ /* Exit without entropy coding */
if( psEnc->sCmn.prefillFlag ) { if( psEnc->sCmn.prefillFlag ) {
/* No payload */ /* No payload */
@ -314,6 +310,10 @@ opus_int silk_encode_frame_FIX(
return ret; return ret;
} }
/* Parameters needed for next frame */
psEnc->sCmn.prevLag = sEncCtrl.pitchL[ psEnc->sCmn.nb_subfr - 1 ];
psEnc->sCmn.prevSignalType = psEnc->sCmn.indices.signalType;
/****************************************/ /****************************************/
/* Finalize payload */ /* Finalize payload */
/****************************************/ /****************************************/

View file

@ -294,10 +294,6 @@ opus_int silk_encode_frame_FLP(
silk_memmove( psEnc->x_buf, &psEnc->x_buf[ psEnc->sCmn.frame_length ], silk_memmove( psEnc->x_buf, &psEnc->x_buf[ psEnc->sCmn.frame_length ],
( psEnc->sCmn.ltp_mem_length + LA_SHAPE_MS * psEnc->sCmn.fs_kHz ) * sizeof( silk_float ) ); ( psEnc->sCmn.ltp_mem_length + LA_SHAPE_MS * psEnc->sCmn.fs_kHz ) * sizeof( silk_float ) );
/* Parameters needed for next frame */
psEnc->sCmn.prevLag = sEncCtrl.pitchL[ psEnc->sCmn.nb_subfr - 1 ];
psEnc->sCmn.prevSignalType = psEnc->sCmn.indices.signalType;
/* Exit without entropy coding */ /* Exit without entropy coding */
if( psEnc->sCmn.prefillFlag ) { if( psEnc->sCmn.prefillFlag ) {
/* No payload */ /* No payload */
@ -305,6 +301,10 @@ opus_int silk_encode_frame_FLP(
return ret; return ret;
} }
/* Parameters needed for next frame */
psEnc->sCmn.prevLag = sEncCtrl.pitchL[ psEnc->sCmn.nb_subfr - 1 ];
psEnc->sCmn.prevSignalType = psEnc->sCmn.indices.signalType;
/****************************************/ /****************************************/
/* Finalize payload */ /* Finalize payload */
/****************************************/ /****************************************/