diff --git a/libavcodec/takdec.c b/libavcodec/takdec.c
index e5c072394061bff93af463f647c77c0ea0684f66..dc0449e57d351d20eaa1423b2480cdd500133a59 100644
--- a/libavcodec/takdec.c
+++ b/libavcodec/takdec.c
@@ -645,7 +645,7 @@ static int decorrelate(TAKDecContext *s, int c1, int c2, int length)
                 *p1++ = v;
             }
 
-            memcpy(s->residues, &s->residues[tmp], 2 * filter_order);
+            memmove(s->residues, &s->residues[tmp], 2 * filter_order);
         }
 
         emms_c();