From 4fd6bba2570c755e95e342e61a3e6d03225f6fae Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 6 Sep 2022 12:29:42 -0700 Subject: [PATCH] Refactored for similarity to surrounding code --- src/render/direct3d12/SDL_render_d3d12.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/src/render/direct3d12/SDL_render_d3d12.c b/src/render/direct3d12/SDL_render_d3d12.c index bcb19ee3e..832d4c8f7 100644 --- a/src/render/direct3d12/SDL_render_d3d12.c +++ b/src/render/direct3d12/SDL_render_d3d12.c @@ -720,13 +720,9 @@ D3D12_CreateDeviceResources(SDL_Renderer* renderer) PFN_CREATE_DXGI_FACTORY CreateDXGIFactoryFunc; PFN_D3D12_CREATE_DEVICE D3D12CreateDeviceFunc; #endif -#ifndef __GDK__ - HMODULE kernel32; typedef HANDLE(WINAPI* PFN_CREATE_EVENT_EX)(LPSECURITY_ATTRIBUTES lpEventAttributes, LPCWSTR lpName, DWORD dwFlags, DWORD dwDesiredAccess); PFN_CREATE_EVENT_EX CreateEventExFunc; -#else -#define CreateEventExFunc CreateEventEx -#endif + D3D12_RenderData* data = (D3D12_RenderData*)renderer->driverdata; ID3D12Device* d3dDevice = NULL; HRESULT result = S_OK; @@ -755,20 +751,21 @@ D3D12_CreateDeviceResources(SDL_Renderer* renderer) /* See if we need debug interfaces */ createDebug = SDL_GetHintBoolean(SDL_HINT_RENDER_DIRECT3D11_DEBUG, SDL_FALSE); -#ifndef __GDK__ +#ifdef __GDK__ + CreateEventExFunc = CreateEventExW; +#else /* CreateEventEx() arrived in Vista, so we need to load it with GetProcAddress for XP. */ - kernel32 = GetModuleHandle(TEXT("kernel32.dll")); - if (!kernel32) { - result = E_FAIL; - goto done; + { + HMODULE kernel32 = GetModuleHandle(TEXT("kernel32.dll")); + if (kernel32) { + CreateEventExFunc = (PFN_CREATE_EVENT_EX) GetProcAddress(kernel32, "CreateEventExW"); + } } - - CreateEventExFunc = (PFN_CREATE_EVENT_EX) GetProcAddress(kernel32, "CreateEventExW"); +#endif if (!CreateEventExFunc) { result = E_FAIL; goto done; } -#endif #if !defined(__XBOXONE__) && !defined(__XBOXSERIES__) data->hDXGIMod = SDL_LoadObject("dxgi.dll");