Index: third_party/opus/src/silk/fixed/schur64_FIX.c |
diff --git a/third_party/opus/src/silk/fixed/schur64_FIX.c b/third_party/opus/src/silk/fixed/schur64_FIX.c |
index 764a10ef3ea5d2a2f6854f3ae534151a51a018bc..b2cb12d9b160a0715f88e72439e5a036b8628ac5 100644 |
--- a/third_party/opus/src/silk/fixed/schur64_FIX.c |
+++ b/third_party/opus/src/silk/fixed/schur64_FIX.c |
@@ -43,7 +43,7 @@ opus_int32 silk_schur64( /* O returns residual ene |
opus_int32 C[ SILK_MAX_ORDER_LPC + 1 ][ 2 ]; |
opus_int32 Ctmp1_Q30, Ctmp2_Q30, rc_tmp_Q31; |
- silk_assert( order==6||order==8||order==10||order==12||order==14||order==16 ); |
+ silk_assert( order >= 0 && order <= SILK_MAX_ORDER_LPC ); |
/* Check for invalid input */ |
if( c[ 0 ] <= 0 ) { |
@@ -51,9 +51,10 @@ opus_int32 silk_schur64( /* O returns residual ene |
return 0; |
} |
- for( k = 0; k < order + 1; k++ ) { |
+ k = 0; |
+ do { |
C[ k ][ 0 ] = C[ k ][ 1 ] = c[ k ]; |
- } |
+ } while( ++k <= order ); |
for( k = 0; k < order; k++ ) { |
/* Check that we won't be getting an unstable rc, otherwise stop here. */ |