Rebase against bd7f43d7e8fca5cab20120b3819bfd5491436b72.

This commit is contained in:
Sebastian Lackner 2015-08-17 18:29:01 +02:00
parent cc04af2457
commit c0bdcaecf5
8 changed files with 6 additions and 276 deletions

View File

@ -89,7 +89,7 @@ for more details.*
* Add stub for winscard.SCardListReadersA/W ([Wine Bug #26978](https://bugs.winehq.org/show_bug.cgi?id=26978))
* Add stub for winsta.WinStationEnumerateW ([Wine Bug #38102](https://bugs.winehq.org/show_bug.cgi?id=38102))
* Add stubbed ISWbemSecurity interfaces in wbemdisp
* Add stubs for D3DCompile2 and D3DCompileFromFile
* ~~Add stubs for D3DCompile2 and D3DCompileFromFile~~
* Add stubs for D3DXCreateAnimationController interface
* Add stubs for additional wininet options in InternetSetOption
* Add stubs for d3dx10_43.D3DX10CreateEffectFromFileA/W ([Wine Bug #27739](https://bugs.winehq.org/show_bug.cgi?id=27739))

5
debian/changelog vendored
View File

@ -16,7 +16,10 @@ wine-staging (1.7.50) UNRELEASED; urgency=low
(fixes Wine Staging Bug #363).
* Added patch fix detection of case-insensitive systems in MSYS2.
* Removed patch to move security cookie initialization from memory management
to loader.
to loader (accepted upstream).
* Removed patches for stub of D3DCompileFromFile and D3DCompile2 (accepted
upstream).
* Removed patch to fix multiple uninitialized memory issues in wineserver.
-- Sebastian Lackner <sebastian@fds-team.de> Tue, 11 Aug 2015 06:12:14 +0200
wine-staging (1.7.49) unstable; urgency=low

View File

@ -1,57 +0,0 @@
From 13f3dd44fe48a06d9b8dafd4b499383cf17ff3e9 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Thu, 23 Jul 2015 19:09:32 +1000
Subject: d3dcompiler_43: Add D3DCompileFromFile stub. (try 3)
---
dlls/d3dcompiler_43/compiler.c | 9 +++++++++
dlls/d3dcompiler_46/d3dcompiler_46.spec | 2 +-
dlls/d3dcompiler_47/d3dcompiler_47.spec | 2 +-
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/dlls/d3dcompiler_43/compiler.c b/dlls/d3dcompiler_43/compiler.c
index 114b4c1..5dce856 100644
--- a/dlls/d3dcompiler_43/compiler.c
+++ b/dlls/d3dcompiler_43/compiler.c
@@ -763,3 +763,12 @@ HRESULT WINAPI D3DDisassemble(const void *data, SIZE_T size, UINT flags, const c
data, size, flags, comments, disassembly);
return E_NOTIMPL;
}
+
+HRESULT WINAPI D3DCompileFromFile(const WCHAR *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *includes,
+ const char *entrypoint, const char *target, UINT flags1, UINT flags2, ID3DBlob **code, ID3DBlob **errors)
+{
+ FIXME("filename %s, defines %p, includes %p, entrypoint %s, target %s, flags1 %x, flags2 %x, code %p, errors %p\n",
+ debugstr_w(filename), defines, includes, debugstr_a(entrypoint), debugstr_a(target), flags1, flags2, code, errors);
+
+ return E_NOTIMPL;
+}
diff --git a/dlls/d3dcompiler_46/d3dcompiler_46.spec b/dlls/d3dcompiler_46/d3dcompiler_46.spec
index 5811b40..e36a8c0 100644
--- a/dlls/d3dcompiler_46/d3dcompiler_46.spec
+++ b/dlls/d3dcompiler_46/d3dcompiler_46.spec
@@ -1,7 +1,7 @@
@ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr)
@ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr)
@ stub D3DCompile2
-@ stub D3DCompileFromFile
+@ stdcall D3DCompileFromFile(wstr ptr ptr str str long long ptr ptr)
@ stub D3DCompressShaders
@ stdcall D3DCreateBlob(long ptr)
@ stub D3DDecompressShaders
diff --git a/dlls/d3dcompiler_47/d3dcompiler_47.spec b/dlls/d3dcompiler_47/d3dcompiler_47.spec
index 40ad977..a0df93e 100644
--- a/dlls/d3dcompiler_47/d3dcompiler_47.spec
+++ b/dlls/d3dcompiler_47/d3dcompiler_47.spec
@@ -1,7 +1,7 @@
@ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr)
@ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr)
@ stub D3DCompile2
-@ stub D3DCompileFromFile
+@ stdcall D3DCompileFromFile(wstr ptr ptr str str long long ptr ptr)
@ stub D3DCompressShaders
@ stdcall D3DCreateBlob(long ptr)
@ stub D3DCreateFunctionLinkingGraph
--
2.4.5

View File

@ -1,90 +0,0 @@
From 8e9d8ee497c06533082707f091339a20f2af5be1 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Wed, 29 Jul 2015 17:58:02 +0200
Subject: d3dcompiler_43: Implement semi-stub for D3DCompile2.
---
dlls/d3dcompiler_43/compiler.c | 28 ++++++++++++++++++++++++----
dlls/d3dcompiler_46/d3dcompiler_46.spec | 2 +-
dlls/d3dcompiler_47/d3dcompiler_47.spec | 2 +-
3 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/dlls/d3dcompiler_43/compiler.c b/dlls/d3dcompiler_43/compiler.c
index 5dce856..33ef916 100644
--- a/dlls/d3dcompiler_43/compiler.c
+++ b/dlls/d3dcompiler_43/compiler.c
@@ -692,16 +692,23 @@ static HRESULT compile_shader(const char *preproc_shader, const char *target, co
return S_OK;
}
-HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filename,
+HRESULT WINAPI D3DCompile2(const void *data, SIZE_T data_size, const char *filename,
const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint,
- const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages)
+ const char *target, UINT sflags, UINT eflags, UINT secondary_flags,
+ const void *secondary_data, SIZE_T secondary_data_size, ID3DBlob **shader,
+ ID3DBlob **error_messages)
{
HRESULT hr;
TRACE("data %p, data_size %lu, filename %s, defines %p, include %p, entrypoint %s,\n"
- "target %s, sflags %#x, eflags %#x, shader %p, error_messages %p\n",
+ "target %s, sflags %#x, eflags %#x, secondary_flags %#x, secondary_data %p,\n"
+ "secondary_data_size %lu, shader %p, error_messages %p\n",
data, data_size, debugstr_a(filename), defines, include, debugstr_a(entrypoint),
- debugstr_a(target), sflags, eflags, shader, error_messages);
+ debugstr_a(target), sflags, eflags, secondary_flags, secondary_data,
+ secondary_data_size, shader, error_messages);
+
+ if (secondary_data)
+ FIXME("secondary data not implemented yet\n");
if (shader) *shader = NULL;
if (error_messages) *error_messages = NULL;
@@ -717,6 +724,19 @@ HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filena
return hr;
}
+HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filename,
+ const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint,
+ const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages)
+{
+ TRACE("data %p, data_size %lu, filename %s, defines %p, include %p, entrypoint %s,\n"
+ "target %s, sflags %#x, eflags %#x, shader %p, error_messages %p\n",
+ data, data_size, debugstr_a(filename), defines, include, debugstr_a(entrypoint),
+ debugstr_a(target), sflags, eflags, shader, error_messages);
+
+ return D3DCompile2(data, data_size, filename, defines, include, entrypoint, target, sflags,
+ eflags, 0, NULL, 0, shader, error_messages);
+}
+
HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename,
const D3D_SHADER_MACRO *defines, ID3DInclude *include,
ID3DBlob **shader, ID3DBlob **error_messages)
diff --git a/dlls/d3dcompiler_46/d3dcompiler_46.spec b/dlls/d3dcompiler_46/d3dcompiler_46.spec
index e36a8c0..1b145c8a 100644
--- a/dlls/d3dcompiler_46/d3dcompiler_46.spec
+++ b/dlls/d3dcompiler_46/d3dcompiler_46.spec
@@ -1,6 +1,6 @@
@ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr)
@ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr)
-@ stub D3DCompile2
+@ stdcall D3DCompile2(ptr long str ptr ptr str str long long long ptr long ptr ptr)
@ stdcall D3DCompileFromFile(wstr ptr ptr str str long long ptr ptr)
@ stub D3DCompressShaders
@ stdcall D3DCreateBlob(long ptr)
diff --git a/dlls/d3dcompiler_47/d3dcompiler_47.spec b/dlls/d3dcompiler_47/d3dcompiler_47.spec
index a0df93e..efa4767 100644
--- a/dlls/d3dcompiler_47/d3dcompiler_47.spec
+++ b/dlls/d3dcompiler_47/d3dcompiler_47.spec
@@ -1,6 +1,6 @@
@ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr)
@ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr)
-@ stub D3DCompile2
+@ stdcall D3DCompile2(ptr long str ptr ptr str str long long long ptr long ptr ptr)
@ stdcall D3DCompileFromFile(wstr ptr ptr str str long long ptr ptr)
@ stub D3DCompressShaders
@ stdcall D3DCreateBlob(long ptr)
--
2.4.5

View File

@ -1 +0,0 @@
Fixes: Add stubs for D3DCompile2 and D3DCompileFromFile

View File

@ -55,7 +55,7 @@ version()
echo "Copyright (C) 2014-2015 the Wine Staging project authors."
echo ""
echo "Patchset to be applied on upstream Wine:"
echo " commit 36a39cea9096a1eef46c59392858c26ecae40c39"
echo " commit bd7f43d7e8fca5cab20120b3819bfd5491436b72"
echo ""
}
@ -90,7 +90,6 @@ patch_enable_all ()
enable_d3d9_DesktopWindow="$1"
enable_d3d9_Skip_Tests="$1"
enable_d3d9_Surface_Refcount="$1"
enable_d3dcompiler_43_D3DCompile="$1"
enable_d3dx10_43_D3DX10CreateEffectFromFile="$1"
enable_d3dx9_24_ID3DXEffect="$1"
enable_d3dx9_25_ID3DXEffect="$1"
@ -222,7 +221,6 @@ patch_enable_all ()
enable_server_RootDirectory_File="$1"
enable_server_Shared_Memory="$1"
enable_server_Stored_ACLs="$1"
enable_server_Uninitialized_Memory="$1"
enable_setupapi_SetupDiSelectBestCompatDrv="$1"
enable_setupapi_SetupDiSetDeviceInstallParamsW="$1"
enable_setupapi_SetupPromptForDisk="$1"
@ -363,9 +361,6 @@ patch_enable ()
d3d9-Surface_Refcount)
enable_d3d9_Surface_Refcount="$2"
;;
d3dcompiler_43-D3DCompile)
enable_d3dcompiler_43_D3DCompile="$2"
;;
d3dx10_43-D3DX10CreateEffectFromFile)
enable_d3dx10_43_D3DX10CreateEffectFromFile="$2"
;;
@ -759,9 +754,6 @@ patch_enable ()
server-Stored_ACLs)
enable_server_Stored_ACLs="$2"
;;
server-Uninitialized_Memory)
enable_server_Uninitialized_Memory="$2"
;;
setupapi-SetupDiSelectBestCompatDrv)
enable_setupapi_SetupDiSelectBestCompatDrv="$2"
;;
@ -2330,20 +2322,6 @@ if test "$enable_d3d9_Surface_Refcount" -eq 1; then
) >> "$patchlist"
fi
# Patchset d3dcompiler_43-D3DCompile
# |
# | Modified files:
# | * dlls/d3dcompiler_43/compiler.c, dlls/d3dcompiler_46/d3dcompiler_46.spec, dlls/d3dcompiler_47/d3dcompiler_47.spec
# |
if test "$enable_d3dcompiler_43_D3DCompile" -eq 1; then
patch_apply d3dcompiler_43-D3DCompile/0001-d3dcompiler_43-Add-D3DCompileFromFile-stub.-try-3.patch
patch_apply d3dcompiler_43-D3DCompile/0002-d3dcompiler_43-Implement-semi-stub-for-D3DCompile2.patch
(
echo '+ { "Alistair Leslie-Hughes", "d3dcompiler_43: Add D3DCompileFromFile stub.", 3 },';
echo '+ { "Sebastian Lackner", "d3dcompiler_43: Implement semi-stub for D3DCompile2.", 1 },';
) >> "$patchlist"
fi
# Patchset d3dx10_43-D3DX10CreateEffectFromFile
# |
# | This patchset fixes the following Wine bugs:
@ -4649,20 +4627,6 @@ if test "$enable_server_Shared_Memory" -eq 1; then
) >> "$patchlist"
fi
# Patchset server-Uninitialized_Memory
# |
# | Modified files:
# | * server/device.c
# |
if test "$enable_server_Uninitialized_Memory" -eq 1; then
patch_apply server-Uninitialized_Memory/0001-server-Initialize-irp-thread-immediately-after-creat.patch
patch_apply server-Uninitialized_Memory/0002-server-Avoid-leaking-uninitialized-stack-value-to-ap.patch
(
echo '+ { "Sebastian Lackner", "server: Initialize irp->thread immediately after creation of irp_call object.", 1 },';
echo '+ { "Sebastian Lackner", "server: Avoid leaking uninitialized stack value to application.", 1 },';
) >> "$patchlist"
fi
# Patchset setupapi-SetupDiSelectBestCompatDrv
# |
# | This patchset fixes the following Wine bugs:

View File

@ -1,25 +0,0 @@
From 0051325fd29e84924ad64047a2476329f0e1abbf Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sun, 16 Aug 2015 07:17:48 +0200
Subject: server: Initialize irp->thread immediately after creation of irp_call
object.
---
server/device.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/server/device.c b/server/device.c
index e6dc15e..812bce3 100644
--- a/server/device.c
+++ b/server/device.c
@@ -259,6 +259,7 @@ static struct irp_call *create_irp( struct device_file *file, const irp_params_t
if ((irp = alloc_object( &irp_call_ops )))
{
irp->file = (struct device_file *)grab_object( file );
+ irp->thread = NULL;
irp->async = NULL;
irp->params = *params;
irp->status = STATUS_PENDING;
--
2.5.0

View File

@ -1,64 +0,0 @@
From 283ccffad0622e4ae4a68d1dbe441c808d9f9503 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sun, 16 Aug 2015 07:18:36 +0200
Subject: server: Avoid leaking uninitialized stack value to application.
---
server/device.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/server/device.c b/server/device.c
index 812bce3..9ef587c 100644
--- a/server/device.c
+++ b/server/device.c
@@ -384,6 +384,7 @@ static struct object *device_open_file( struct object *obj, unsigned int access,
struct irp_call *irp;
irp_params_t params;
+ memset( &params, 0, sizeof(params) );
params.create.major = IRP_MJ_CREATE;
params.create.access = access;
params.create.sharing = sharing;
@@ -422,6 +423,7 @@ static int device_file_close_handle( struct object *obj, struct process *process
struct irp_call *irp;
irp_params_t params;
+ memset( &params, 0, sizeof(params) );
params.close.major = IRP_MJ_CLOSE;
params.close.file = file->user_ptr;
@@ -516,6 +518,7 @@ static obj_handle_t device_file_read( struct fd *fd, const async_data_t *async_d
obj_handle_t handle;
irp_params_t params;
+ memset( &params, 0, sizeof(params) );
params.read.major = IRP_MJ_READ;
params.read.key = 0;
params.read.pos = pos;
@@ -537,6 +540,7 @@ static obj_handle_t device_file_write( struct fd *fd, const async_data_t *async_
obj_handle_t handle;
irp_params_t params;
+ memset( &params, 0, sizeof(params) );
params.write.major = IRP_MJ_WRITE;
params.write.key = 0;
params.write.pos = pos;
@@ -557,6 +561,7 @@ static obj_handle_t device_file_flush( struct fd *fd, const async_data_t *async_
obj_handle_t handle;
irp_params_t params;
+ memset( &params, 0, sizeof(params) );
params.flush.major = IRP_MJ_FLUSH_BUFFERS;
params.flush.file = file->user_ptr;
@@ -576,6 +581,7 @@ static obj_handle_t device_file_ioctl( struct fd *fd, ioctl_code_t code, const a
obj_handle_t handle;
irp_params_t params;
+ memset( &params, 0, sizeof(params) );
params.ioctl.major = IRP_MJ_DEVICE_CONTROL;
params.ioctl.code = code;
params.ioctl.file = file->user_ptr;
--
2.5.0