tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

05_set-rate-overflow-no-return.patch (909B)


      1 This is a fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1274083
      2 
      3 diff --git a/src/resample.c b/src/resample.c
      4 --- a/src/resample.c
      5 +++ b/src/resample.c
      6 @@ -1129,18 +1129,19 @@ EXPORT int speex_resampler_set_rate_frac
      7 
      8    st->num_rate /= fact;
      9    st->den_rate /= fact;
     10 
     11    if (old_den > 0)
     12    {
     13       for (i=0;i<st->nb_channels;i++)
     14       {
     15 -         if (multiply_frac(&st->samp_frac_num[i],st->samp_frac_num[i],st->den_rate,old_den) != RESAMPLER_ERR_SUCCESS)
     16 -            return RESAMPLER_ERR_OVERFLOW;
     17 +         if (multiply_frac(&st->samp_frac_num[i],st->samp_frac_num[i],st->den_rate,old_den) != RESAMPLER_ERR_SUCCESS) {
     18 +            st->samp_frac_num[i] = st->den_rate-1;
     19 +         }
     20          /* Safety net */
     21          if (st->samp_frac_num[i] >= st->den_rate)
     22             st->samp_frac_num[i] = st->den_rate-1;
     23       }
     24    }
     25 
     26    if (st->initialised)
     27       return update_filter(st);