diff --git a/src/core/SampleBuffer.cpp b/src/core/SampleBuffer.cpp index 368600752..ffe631ca4 100644 --- a/src/core/SampleBuffer.cpp +++ b/src/core/SampleBuffer.cpp @@ -24,6 +24,8 @@ #include "SampleBuffer.h" +#include + #include #include #include @@ -1411,8 +1413,13 @@ void SampleBuffer::setAmplification( float _a ) void SampleBuffer::setReversed( bool _on ) { + Engine::mixer()->requestChangeInModel(); + m_varLock.lockForWrite(); + if (m_reversed != _on) { std::reverse(m_data, m_data + m_frames); } m_reversed = _on; - update( true ); + m_varLock.unlock(); + Engine::mixer()->doneChangeInModel(); + emit sampleUpdated(); }