diff options
author | Nils Wallménius <nils@rockbox.org> | 2012-05-12 08:45:31 +0200 |
---|---|---|
committer | Nils Wallménius <nils@rockbox.org> | 2012-05-12 08:47:10 +0200 |
commit | 2202ed35351c30af6ce157002e5cb072b0b66a69 (patch) | |
tree | 75bd28e997c704299ab0ab3336ee88aca3875a29 /lib/rbcodec/dsp | |
parent | 4b5348ba04a62335757d439aa1acb8a3579c267d (diff) | |
download | rockbox-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.c | 4 |
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:; | |||
336 | 336 | ||
337 | for (int ch = 0; ch < st->channels; ch++) | 337 | for (int ch = 0; ch < st->channels; ch++) |
338 | { | 338 | { |
339 | memcpy(st->ovl_buff[ch], buf_in[ch] + i, | 339 | memmove(st->ovl_buff[ch], buf_in[ch] + i, |
340 | st->ovl_size * sizeof(int32_t)); | 340 | st->ovl_size * sizeof(int32_t)); |
341 | } | 341 | } |
342 | 342 | ||
343 | if (consumed) | 343 | if (consumed) |