Added patch for D3DX11CreateShaderResourceViewFromMemory stub.

This commit is contained in:
Sebastian Lackner 2017-01-08 21:24:00 +01:00
parent d1fe864c5e
commit a16141c94f
3 changed files with 131 additions and 0 deletions

View File

@ -0,0 +1,110 @@
From 755979edcad39862f2555c557db85644eb23acb7 Mon Sep 17 00:00:00 2001
From: Andrey Gusev <andrey.goosev@gmail.com>
Date: Wed, 28 Dec 2016 16:43:13 +0200
Subject: d3dx11: Add D3DX11CreateShaderResourceViewFromMemory stub.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
---
dlls/d3dx11_42/Makefile.in | 1 +
dlls/d3dx11_42/d3dx11_42.spec | 2 +-
dlls/d3dx11_43/Makefile.in | 1 +
dlls/d3dx11_43/d3dx11_43.spec | 2 +-
dlls/d3dx11_43/shader.c | 36 ++++++++++++++++++++++++++++++++++++
5 files changed, 40 insertions(+), 2 deletions(-)
create mode 100644 dlls/d3dx11_43/shader.c
diff --git a/dlls/d3dx11_42/Makefile.in b/dlls/d3dx11_42/Makefile.in
index d20f6600ecd..80eb4cdbce9 100644
--- a/dlls/d3dx11_42/Makefile.in
+++ b/dlls/d3dx11_42/Makefile.in
@@ -5,6 +5,7 @@ PARENTSRC = ../d3dx11_43
C_SRCS = \
async.c \
d3dx11_42.c \
+ shader.c \
texture.c
RC_SRCS = version.rc
diff --git a/dlls/d3dx11_42/d3dx11_42.spec b/dlls/d3dx11_42/d3dx11_42.spec
index f97ec246bdf..f4a1b8edd3a 100644
--- a/dlls/d3dx11_42/d3dx11_42.spec
+++ b/dlls/d3dx11_42/d3dx11_42.spec
@@ -17,7 +17,7 @@
@ stub D3DX11CreateAsyncTextureProcessor
@ stub D3DX11CreateShaderResourceViewFromFileA
@ stub D3DX11CreateShaderResourceViewFromFileW
-@ stub D3DX11CreateShaderResourceViewFromMemory
+@ stdcall D3DX11CreateShaderResourceViewFromMemory(ptr ptr long ptr ptr ptr ptr)
@ stub D3DX11CreateShaderResourceViewFromResourceA
@ stub D3DX11CreateShaderResourceViewFromResourceW
@ stub D3DX11CreateTextureFromFileA
diff --git a/dlls/d3dx11_43/Makefile.in b/dlls/d3dx11_43/Makefile.in
index d5c5b455480..8435a7c4aa5 100644
--- a/dlls/d3dx11_43/Makefile.in
+++ b/dlls/d3dx11_43/Makefile.in
@@ -5,6 +5,7 @@ IMPORTS = d3dcompiler
C_SRCS = \
async.c \
d3dx11_43.c \
+ shader.c \
texture.c
RC_SRCS = version.rc
diff --git a/dlls/d3dx11_43/d3dx11_43.spec b/dlls/d3dx11_43/d3dx11_43.spec
index 217cad10b47..6ce570b2402 100644
--- a/dlls/d3dx11_43/d3dx11_43.spec
+++ b/dlls/d3dx11_43/d3dx11_43.spec
@@ -17,7 +17,7 @@
@ stub D3DX11CreateAsyncTextureProcessor
@ stub D3DX11CreateShaderResourceViewFromFileA
@ stub D3DX11CreateShaderResourceViewFromFileW
-@ stub D3DX11CreateShaderResourceViewFromMemory
+@ stdcall D3DX11CreateShaderResourceViewFromMemory(ptr ptr long ptr ptr ptr ptr)
@ stub D3DX11CreateShaderResourceViewFromResourceA
@ stub D3DX11CreateShaderResourceViewFromResourceW
@ stub D3DX11CreateTextureFromFileA
diff --git a/dlls/d3dx11_43/shader.c b/dlls/d3dx11_43/shader.c
new file mode 100644
index 00000000000..3420cc82f3b
--- /dev/null
+++ b/dlls/d3dx11_43/shader.c
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2016 Andrey Gusev
+ *
+ * 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 "config.h"
+#include "wine/port.h"
+#include "d3dx11.h"
+#include "d3dcompiler.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(d3dx);
+
+HRESULT WINAPI D3DX11CreateShaderResourceViewFromMemory(ID3D11Device *device, const void *data,
+ SIZE_T data_size, D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump,
+ ID3D11ShaderResourceView **view, HRESULT *hresult)
+{
+ FIXME("device %p, data %p, data_size %lu, load_info %p, pump %p, view %p, hresult %p stub!\n",
+ device, data, data_size, load_info, pump, view, hresult);
+
+ return E_NOTIMPL;
+}
--
2.11.0

View File

@ -0,0 +1 @@
Fixes: [42078] Add D3DX11CreateShaderResourceViewFromMemory stub

View File

@ -114,6 +114,7 @@ patch_enable_all ()
enable_d3d9_DesktopWindow="$1"
enable_d3d9_Surface_Refcount="$1"
enable_d3d9_Tests="$1"
enable_d3dx11_D3DX11CreateShaderResourceViewFromMemory="$1"
enable_d3dx9_25_ID3DXEffect="$1"
enable_d3dx9_36_BumpLuminance="$1"
enable_d3dx9_36_CloneEffect="$1"
@ -534,6 +535,9 @@ patch_enable ()
d3d9-Tests)
enable_d3d9_Tests="$2"
;;
d3dx11-D3DX11CreateShaderResourceViewFromMemory)
enable_d3dx11_D3DX11CreateShaderResourceViewFromMemory="$2"
;;
d3dx9_25-ID3DXEffect)
enable_d3dx9_25_ID3DXEffect="$2"
;;
@ -3276,6 +3280,22 @@ if test "$enable_d3d9_Tests" -eq 1; then
) >> "$patchlist"
fi
# Patchset d3dx11-D3DX11CreateShaderResourceViewFromMemory
# |
# | This patchset fixes the following Wine bugs:
# | * [#42078] Add D3DX11CreateShaderResourceViewFromMemory stub
# |
# | Modified files:
# | * dlls/d3dx11_42/Makefile.in, dlls/d3dx11_42/d3dx11_42.spec, dlls/d3dx11_43/Makefile.in, dlls/d3dx11_43/d3dx11_43.spec,
# | dlls/d3dx11_43/shader.c
# |
if test "$enable_d3dx11_D3DX11CreateShaderResourceViewFromMemory" -eq 1; then
patch_apply d3dx11-D3DX11CreateShaderResourceViewFromMemory/0001-d3dx11-Add-D3DX11CreateShaderResourceViewFromMemory-.patch
(
echo '+ { "Andrey Gusev", "d3dx11: Add D3DX11CreateShaderResourceViewFromMemory stub.", 1 },';
) >> "$patchlist"
fi
# Patchset d3dx9_25-ID3DXEffect
# |
# | This patchset fixes the following Wine bugs: