SDL: GPU OpenXR: Fix zero-length copy (#16112)

From eeb832d8a1784fa06a2ceff5cbc3b49ee4e164d5 Mon Sep 17 00:00:00 2001
From: Evan Hemsley <[EMAIL REDACTED]>
Date: Mon, 3 Aug 2026 13:11:32 -0700
Subject: [PATCH] GPU OpenXR: Fix zero-length copy (#16112)

---
 src/gpu/xr/SDL_gpu_openxr.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gpu/xr/SDL_gpu_openxr.c b/src/gpu/xr/SDL_gpu_openxr.c
index 9ef4a4e78edb0..1404f1260c6a8 100644
--- a/src/gpu/xr/SDL_gpu_openxr.c
+++ b/src/gpu/xr/SDL_gpu_openxr.c
@@ -115,7 +115,9 @@ XrResult SDL_OPENXR_INTERNAL_GPUInitOpenXR(
 
     // allocate enough space for the validation layer + the user's api layers
     const char **apiLayerNames = SDL_stack_alloc(const char *, userApiLayerCount + 1);
-    SDL_memcpy((void *)apiLayerNames, userApiLayerNames, sizeof(const char *) * (userApiLayerCount));
+    if (userApiLayerCount > 0) {
+        SDL_memcpy((void *)apiLayerNames, userApiLayerNames, sizeof(const char *) * userApiLayerCount);
+    }
     apiLayerNames[userApiLayerCount] = VALIDATION_LAYER_API_NAME;
 
     // On Android, we need an extra extension for android_create_instance