diff --git a/patches/d3d12core-D3D12GetInterface/0001-d3d12core-Add-D3D12GetInterface-stub.patch b/patches/d3d12core-D3D12GetInterface/0001-d3d12core-Add-D3D12GetInterface-stub.patch new file mode 100644 index 00000000..412ce2c8 --- /dev/null +++ b/patches/d3d12core-D3D12GetInterface/0001-d3d12core-Add-D3D12GetInterface-stub.patch @@ -0,0 +1,69 @@ +From b30d3de1043cef20b57984035968fc78d5fcd2bb Mon Sep 17 00:00:00 2001 +From: Alistair Leslie-Hughes +Date: Sat, 22 Jul 2023 10:22:03 +1000 +Subject: [PATCH] d3d12core: Add D3D12GetInterface stub + +Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55135 +--- + dlls/d3d12core/Makefile.in | 3 +++ + dlls/d3d12core/d3d12core.spec | 2 +- + dlls/d3d12core/d3d12core_main.c | 30 ++++++++++++++++++++++++++++++ + 3 files changed, 34 insertions(+), 1 deletion(-) + create mode 100644 dlls/d3d12core/d3d12core_main.c + +diff --git a/dlls/d3d12core/Makefile.in b/dlls/d3d12core/Makefile.in +index 8778b66138b..94d8fd4da00 100644 +--- a/dlls/d3d12core/Makefile.in ++++ b/dlls/d3d12core/Makefile.in +@@ -1 +1,4 @@ + MODULE = d3d12core.dll ++ ++C_SRCS = \ ++ d3d12core_main.c +diff --git a/dlls/d3d12core/d3d12core.spec b/dlls/d3d12core/d3d12core.spec +index c9c73bd4ee4..3f3e0a0f2e1 100644 +--- a/dlls/d3d12core/d3d12core.spec ++++ b/dlls/d3d12core/d3d12core.spec +@@ -1,2 +1,2 @@ +-@ stub D3D12GetInterface ++@ stdcall D3D12GetInterface(ptr ptr ptr) + @ stub D3D12SDKVersion +diff --git a/dlls/d3d12core/d3d12core_main.c b/dlls/d3d12core/d3d12core_main.c +new file mode 100644 +index 00000000000..75a083ad276 +--- /dev/null ++++ b/dlls/d3d12core/d3d12core_main.c +@@ -0,0 +1,30 @@ ++/* ++ * Copyright (c) 2023 Alistair Leslie-Hughes ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA ++ */ ++ ++#include ++ ++#include "wine/debug.h" ++ ++WINE_DEFAULT_DEBUG_CHANNEL(d3d12core); ++ ++HRESULT WINAPI D3D12GetInterface(REFCLSID rclsid, REFIID riid, void **out) ++{ ++ FIXME("%d, %s, %p\n", debugstr_guid(rclsid), debugstr_guid(riid), out); ++ ++ return E_NOINTERFACE; ++} +-- +2.40.1 + diff --git a/patches/d3d12core-D3D12GetInterface/definition b/patches/d3d12core-D3D12GetInterface/definition new file mode 100644 index 00000000..9b39ba4d --- /dev/null +++ b/patches/d3d12core-D3D12GetInterface/definition @@ -0,0 +1 @@ +Fixes: [55135] d3d12core: Add D3D12GetInterface stub