summaryrefslogtreecommitdiffstats
path: root/lib/rbcodec/dsp
diff options
context:
space:
mode:
authorNils Wallménius <nils@rockbox.org>2012-05-12 08:45:31 +0200
committerNils Wallménius <nils@rockbox.org>2012-05-12 08:47:10 +0200
commit2202ed35351c30af6ce157002e5cb072b0b66a69 (patch)
tree75bd28e997c704299ab0ab3336ee88aca3875a29 /lib/rbcodec/dsp
parent4b5348ba04a62335757d439aa1acb8a3579c267d (diff)
downloadrockbox-2202ed35351c30af6ce157002e5cb072b0b66a69.tar.gz
rockbox-2202ed35351c30af6ce157002e5cb072b0b66a69.zip
TDSpeed: Fix crackling on some systems
Use memmove instead of memcpy for overlapping copy, fixes crackling in sims and warble on my system. Native targets seem to have been unaffected. Change-Id: I265d4ce373e224581bd2f5ba15c75b473ec231f2
Diffstat (limited to 'lib/rbcodec/dsp')
-rw-r--r--lib/rbcodec/dsp/tdspeed.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/rbcodec/dsp/tdspeed.c b/lib/rbcodec/dsp/tdspeed.c
index 8f32a62e0e..92dfb31bed 100644
--- a/lib/rbcodec/dsp/tdspeed.c
+++ b/lib/rbcodec/dsp/tdspeed.c
@@ -336,8 +336,8 @@ skip:;
for (int ch = 0; ch < st->channels; ch++)
{
- memcpy(st->ovl_buff[ch], buf_in[ch] + i,
- st->ovl_size * sizeof(int32_t));
+ memmove(st->ovl_buff[ch], buf_in[ch] + i,
+ st->ovl_size * sizeof(int32_t));
}
if (consumed)