Commit a337f67e authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Fix for 3GPP issue 1141: Overflow in W_extract_l - Part 2

Link #1141
parent 909f10c3
Loading
Loading
Loading
Loading
Loading
+24 −1
Original line number Diff line number Diff line
@@ -770,7 +770,30 @@ void acelp_fast_fx(
                    alp_pos3++;
                }

                i = emaximum_32fx( Q_dn, dn, L_subfr, &L_tmp1 );
                Word16 k;
                Word64 W_tmp, W_tmp1;
                Word64 emax;

                emax = W_mult0_32_32( dn[0], dn[0] );
                i = 0;
                move16();

                FOR( k = 1; k < L_subfr; k++ )
                {
                    W_tmp = W_mult0_32_32( dn[k], dn[k] );
                    W_tmp1 = W_sub( W_tmp, emax );
                    if ( W_tmp1 > 0 )
                    {
                        i = k;
                        move16();
                    }
                    if ( LE_64( emax, W_tmp ) )
                    {
                        emax = W_tmp;
                        move64();
                    }
                }

                track = i % nb_tracks;
                move16();