fune/media/libspeex_resampler/set-rate-overflow-no-return.patch
Paul Adenot a01cea3a7b Bug 1341254 - Update libspeex_resampler to 79822c. r=karlt
MozReview-Commit-ID: EDYCyjrWmz1

--HG--
extra : rebase_source : 94d87c4b911ac646e755e03dc938da57ce237aad
2017-03-06 17:16:23 +01:00

25 lines
924 B
Diff

diff --git a/media/libspeex_resampler/src/resample.c b/media/libspeex_resampler/src/resample.c
--- a/media/libspeex_resampler/src/resample.c
+++ b/media/libspeex_resampler/src/resample.c
@@ -1141,18 +1141,19 @@ EXPORT int speex_resampler_set_rate_frac
st->num_rate /= fact;
st->den_rate /= fact;
if (old_den > 0)
{
for (i=0;i<st->nb_channels;i++)
{
- if (_muldiv(&st->samp_frac_num[i],st->samp_frac_num[i],st->den_rate,old_den) != RESAMPLER_ERR_SUCCESS)
- return RESAMPLER_ERR_OVERFLOW;
+ if (_muldiv(&st->samp_frac_num[i],st->samp_frac_num[i],st->den_rate,old_den) != RESAMPLER_ERR_SUCCESS) {
+ st->samp_frac_num[i] = st->den_rate-1;
+ }
/* Safety net */
if (st->samp_frac_num[i] >= st->den_rate)
st->samp_frac_num[i] = st->den_rate-1;
}
}
if (st->initialised)
return update_filter(st);