SDL: gpu: Pass a valid pCallbackCookie pointer to RegisterMessageCallback (#16327)

From 67bf94eed520569fa2eb615922547e8f419f49f3 Mon Sep 17 00:00:00 2001
From: Chicken-Bones <[EMAIL REDACTED]>
Date: Mon, 21 Sep 2026 07:04:03 +1000
Subject: [PATCH] gpu: Pass a valid pCallbackCookie pointer to
 RegisterMessageCallback (#16327)

ID3D12InfoQueue1_RegisterMessageCallback returns E_INVALIDARG if you pass NULL for pCallbackCookie (at least on my machine)
---
 src/gpu/d3d12/SDL_gpu_d3d12.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gpu/d3d12/SDL_gpu_d3d12.c b/src/gpu/d3d12/SDL_gpu_d3d12.c
index 07f948ef2cb40..8a62873af06e3 100644
--- a/src/gpu/d3d12/SDL_gpu_d3d12.c
+++ b/src/gpu/d3d12/SDL_gpu_d3d12.c
@@ -8891,6 +8891,7 @@ static void WINAPI D3D12_INTERNAL_OnD3D12DebugInfoMsg(
 static void D3D12_INTERNAL_TryInitializeD3D12DebugInfoLogger(D3D12Renderer *renderer)
 {
     ID3D12InfoQueue1 *infoQueue = NULL;
+    DWORD callbackCookie = 0;
     HRESULT res;
 
     res = ID3D12Device_QueryInterface(
@@ -8906,7 +8907,7 @@ static void D3D12_INTERNAL_TryInitializeD3D12DebugInfoLogger(D3D12Renderer *rend
         D3D12_INTERNAL_OnD3D12DebugInfoMsg,
         D3D12_MESSAGE_CALLBACK_FLAG_NONE,
         NULL,
-        NULL);
+        &callbackCookie);
 
     ID3D12InfoQueue1_Release(infoQueue);
 }