swr: move dst_size == 0 handling outside DSP function.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Ronald S. Bultje 2014-06-28 08:00:05 -04:00 committed by Michael Niedermayer
parent cc92372722
commit ddb7b4435a
1 changed files with 7 additions and 3 deletions

View File

@ -297,10 +297,14 @@ static int swri_resample(ResampleContext *c,
int delta_n = (delta_frac + c->dst_incr - 1) / c->dst_incr;
dst_size = FFMIN(dst_size, delta_n);
if (!c->linear) {
*consumed = c->dsp.resample_common[fn_idx](c, dst, src, dst_size, update_ctx);
if (dst_size > 0) {
if (!c->linear) {
*consumed = c->dsp.resample_common[fn_idx](c, dst, src, dst_size, update_ctx);
} else {
*consumed = c->dsp.resample_linear[fn_idx](c, dst, src, dst_size, update_ctx);
}
} else {
*consumed = c->dsp.resample_linear[fn_idx](c, dst, src, dst_size, update_ctx);
*consumed = 0;
}
}