From 81c39b0cc5577fa57690efaef51b28d92a44c097 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zana=20Dom=C3=A1n?=
<88244790+zanadoman@users.noreply.github.com>
Date: Sat, 4 Jul 2026 02:11:35 +0200
Subject: [PATCH] gpu: validate transfer buffer usage (#15923)
(cherry picked from commit 095e8999737419a82df7e321a33fd2d2141722a0)
---
src/gpu/SDL_gpu.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/gpu/SDL_gpu.c b/src/gpu/SDL_gpu.c
index 5e6d2aa959d8c..57e0c97d89808 100644
--- a/src/gpu/SDL_gpu.c
+++ b/src/gpu/SDL_gpu.c
@@ -1411,6 +1411,13 @@ SDL_GPUTransferBuffer *SDL_CreateGPUTransferBuffer(
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);
return device->CreateTransferBuffer(