Hardening silk/fixed
[opus.git] / silk / fixed / schur64_FIX.c
index 764a10e..4b7e19e 100644 (file)
@@ -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 );
+    celt_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. */