SDL_ttf: ASAN Issue (#528)

From 9a59dbdcb3a3c087bfc401980b5b4576dc3df99c Mon Sep 17 00:00:00 2001
From: tanolino <[EMAIL REDACTED]>
Date: Mon, 17 Mar 2025 21:47:13 +0100
Subject: [PATCH] ASAN Issue (#528)

On MSVC I get a

==9952==ERROR: AddressSanitizer: memcpy-param-overlap: memory ranges [0x11e8718f6e00,0x11e8718f6e78) and [0x11e8718f6e18, 0x11e8718f6e90) overlap

Since the CRT memcpy memory is not allowed to overlap (see: https://learn.microsoft.com/en-us/cpp/sanitizers/error-memcpy-param-overlap?view=msvc-170 )
And SDL_memcpy uses memcpy by default.
---
 src/SDL_renderer_textengine.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/SDL_renderer_textengine.c b/src/SDL_renderer_textengine.c
index 977ecc3e..d8c0c6d2 100644
--- a/src/SDL_renderer_textengine.c
+++ b/src/SDL_renderer_textengine.c
@@ -367,7 +367,7 @@ static bool ResolveMissingGlyphs(TTF_RendererTextEngineData *enginedata, AtlasTe
             // Remove this from the missing entries
             --num_missing;
             if (i < num_missing) {
-                SDL_memcpy(&missing[i], &missing[i+1], (num_missing - i) * sizeof(missing[i]));
+                SDL_memmove(&missing[i], &missing[i + 1], (num_missing - i) * sizeof(missing[i]));
             }
         }
         if (num_missing == 0) {