Просмотр исходного кода

GPU: Fix another OpenXR zero-length copy

Evan Hemsley 1 месяц назад
Родитель
Сommit
c1aa9f43fa
1 измененных файлов с 3 добавлено и 1 удалено
  1. 3 1
      src/gpu/xr/SDL_gpu_openxr.c

+ 3 - 1
src/gpu/xr/SDL_gpu_openxr.c

@@ -128,7 +128,9 @@ XrResult SDL_OPENXR_INTERNAL_GPUInitOpenXR(
 #endif
 #endif
 
 
     const char **extensionNames = SDL_stack_alloc(const char *, userExtensionCount + platformExtensionCount);
     const char **extensionNames = SDL_stack_alloc(const char *, userExtensionCount + platformExtensionCount);
-    SDL_memcpy((void *)extensionNames, userExtensionNames, sizeof(const char *) * (userExtensionCount));
+    if (userExtensionCount > 0) {
+        SDL_memcpy((void *)extensionNames, userExtensionNames, sizeof(const char *) * userExtensionCount);
+    }
     extensionNames[userExtensionCount] = gpuExtension.extensionName;
     extensionNames[userExtensionCount] = gpuExtension.extensionName;
 #ifdef SDL_PLATFORM_ANDROID
 #ifdef SDL_PLATFORM_ANDROID
     extensionNames[userExtensionCount + 1] = XR_KHR_ANDROID_CREATE_INSTANCE_EXTENSION_NAME;
     extensionNames[userExtensionCount + 1] = XR_KHR_ANDROID_CREATE_INSTANCE_EXTENSION_NAME;