diff --git a/include/AudioPortAudio.h b/include/AudioPortAudio.h index e00ef526a25..92d9eb85391 100644 --- a/include/AudioPortAudio.h +++ b/include/AudioPortAudio.h @@ -90,7 +90,7 @@ class AudioPortAudio : public AudioDevice bool m_wasPAInitError; - SampleFrame* m_outBuf; + std::unique_ptr m_outBuf; std::size_t m_outBufPos; fpp_t m_outBufSize; diff --git a/src/core/audio/AudioPortAudio.cpp b/src/core/audio/AudioPortAudio.cpp index 79e2cf88af4..6fd205e78fe 100644 --- a/src/core/audio/AudioPortAudio.cpp +++ b/src/core/audio/AudioPortAudio.cpp @@ -45,7 +45,7 @@ AudioPortAudio::AudioPortAudio(bool& successful, AudioEngine* engine) engine) , m_paStream(nullptr) , m_wasPAInitError(false) - , m_outBuf(new SampleFrame[engine->framesPerPeriod()]) + , m_outBuf(std::make_unique(engine->framesPerPeriod())) , m_outBufPos(0) , m_outBufSize(engine->framesPerPeriod()) { @@ -139,7 +139,6 @@ AudioPortAudio::~AudioPortAudio() { Pa_Terminate(); } - delete[] m_outBuf; } @@ -186,7 +185,7 @@ int AudioPortAudio::processCallback(const float* inputBuffer, float* outputBuffe { if( m_outBufPos == 0 ) { - const fpp_t frames = getNextBuffer( m_outBuf ); + const fpp_t frames = getNextBuffer(m_outBuf.get()); if( !frames ) { m_stopped = true;