diff --git a/src/audio/mixer.cpp b/src/audio/mixer.cpp index d2645c8d10..62f5d905e2 100644 --- a/src/audio/mixer.cpp +++ b/src/audio/mixer.cpp @@ -492,9 +492,10 @@ private: bool result = false; if (len != 0 && cvt->len_mult != 0) { - if (_convertBuffer == nullptr || _convertBufferCapacity < len) + size_t reqConvertBufferCapacity = len * cvt->len_mult; + if (_convertBuffer == nullptr || _convertBufferCapacity < reqConvertBufferCapacity) { - _convertBufferCapacity = len * cvt->len_mult; + _convertBufferCapacity = reqConvertBufferCapacity; _convertBuffer = realloc(_convertBuffer, _convertBufferCapacity); } Memory::Copy(_convertBuffer, src, len);