Răsfoiți Sursa

gpu: validate transfer buffer usage (#15923)

(cherry picked from commit 095e8999737419a82df7e321a33fd2d2141722a0)
Zana Domán 3 zile în urmă
părinte
comite
81c39b0cc5
1 a modificat fișierele cu 7 adăugiri și 0 ștergeri
  1. 7 0
      src/gpu/SDL_gpu.c

+ 7 - 0
src/gpu/SDL_gpu.c

@@ -1411,6 +1411,13 @@ SDL_GPUTransferBuffer *SDL_CreateGPUTransferBuffer(
         return NULL;
         return NULL;
     }
     }
 
 
+    if (device->debug_mode) {
+        if (createinfo->usage != SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD &&
+            createinfo->usage != SDL_GPU_TRANSFERBUFFERUSAGE_DOWNLOAD) {
+            SDL_assert_release(!"Invalid transfer buffer usage!");
+        }
+    }
+
     const char *debugName = SDL_GetStringProperty(createinfo->props, SDL_PROP_GPU_TRANSFERBUFFER_CREATE_NAME_STRING, NULL);
     const char *debugName = SDL_GetStringProperty(createinfo->props, SDL_PROP_GPU_TRANSFERBUFFER_CREATE_NAME_STRING, NULL);
 
 
     return device->CreateTransferBuffer(
     return device->CreateTransferBuffer(