From dc90131d8c0c254624fe38b97720d7f0b13fefad Mon Sep 17 00:00:00 2001 From: Bojidar Marinov Date: Thu, 9 May 2019 18:03:08 +0300 Subject: [PATCH] Fix AudioEffectRecord messing up the effect stack by not writing to dst_frames (cherry picked from commit 9285aad8b359defaacbbcbf3796a530240c3876b) --- servers/audio/effects/audio_effect_record.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/servers/audio/effects/audio_effect_record.cpp b/servers/audio/effects/audio_effect_record.cpp index 96d5c9df892..abf9d5593ca 100644 --- a/servers/audio/effects/audio_effect_record.cpp +++ b/servers/audio/effects/audio_effect_record.cpp @@ -32,6 +32,9 @@ void AudioEffectRecordInstance::process(const AudioFrame *p_src_frames, AudioFrame *p_dst_frames, int p_frame_count) { if (!is_recording) { + for (int i = 0; i < p_frame_count; i++) { + p_dst_frames[i] = p_src_frames[i]; + } return; } @@ -39,6 +42,7 @@ void AudioEffectRecordInstance::process(const AudioFrame *p_src_frames, AudioFra const AudioFrame *src = p_src_frames; AudioFrame *rb_buf = ring_buffer.ptrw(); for (int i = 0; i < p_frame_count; i++) { + p_dst_frames[i] = p_src_frames[i]; rb_buf[ring_buffer_pos & ring_buffer_mask] = src[i]; ring_buffer_pos++; }