mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-27 17:21:05 +00:00
avresample: Reallocate the internal buffer to the correct size
Fixes the corner case in which the internal buffer size is larger than input buffer provided and resizing it before moving the left over samples would make it write to now unallocated memory. Bug-Id: 825 CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
This commit is contained in:
parent
844201e35f
commit
744d813bcf
@ -432,7 +432,9 @@ int ff_audio_resample(ResampleContext *c, AudioData *dst, AudioData *src)
|
||||
int bps = av_get_bytes_per_sample(c->avr->internal_sample_fmt);
|
||||
int i;
|
||||
|
||||
ret = ff_audio_data_realloc(c->buffer, in_samples + c->padding_size);
|
||||
ret = ff_audio_data_realloc(c->buffer,
|
||||
FFMAX(in_samples, in_leftover) +
|
||||
c->padding_size);
|
||||
if (ret < 0) {
|
||||
av_log(c->avr, AV_LOG_ERROR, "Error reallocating resampling buffer\n");
|
||||
return AVERROR(ENOMEM);
|
||||
|
Loading…
Reference in New Issue
Block a user