From 7d16685d585a379a4438cfb79438eaf32f97dcb1 Mon Sep 17 00:00:00 2001 From: Ted John Date: Mon, 2 Jan 2017 15:39:32 +0000 Subject: [PATCH] Re-use convert buffer --- src/audio/mixer.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/audio/mixer.cpp b/src/audio/mixer.cpp index 3c01564869..5efebc62d1 100644 --- a/src/audio/mixer.cpp +++ b/src/audio/mixer.cpp @@ -858,8 +858,8 @@ private: { if (Convert(&cvt, _channelBuffer, bytesRead)) { - buffer = _convertBuffer; - bufferLen = _convertBufferCapacity; + buffer = cvt.buf; + bufferLen = cvt.len_cvt; } else { @@ -1042,8 +1042,11 @@ private: bool result = false; if (len != 0 && cvt->len_mult != 0) { - _convertBufferCapacity = len * cvt->len_mult; - _convertBuffer = realloc(_convertBuffer, _convertBufferCapacity); + if (_convertBuffer == nullptr || _convertBufferCapacity < len) + { + _convertBufferCapacity = len * cvt->len_mult; + _convertBuffer = realloc(_convertBuffer, _convertBufferCapacity); + } memcpy(_convertBuffer, src, len); cvt->len = (int)len;