mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-11-21 16:46:54 -08:00
wined3d-CSMT_Main: Fix warning in CSMT patchset, move fixes for uninitialized memory accesses into corresponding patches.
This commit is contained in:
parent
09ab82e9d0
commit
595ac8afa2
@ -2910,8 +2910,7 @@ if [ "$enable_wined3d_CSMT_Main" -eq 1 ]; then
|
||||
patch_apply wined3d-CSMT_Main/0171-wined3d-Don-t-try-to-sync-VBOs-manually-on-OSX-with-.patch
|
||||
patch_apply wined3d-CSMT_Main/0172-wined3d-Render-target-lock-hack.patch
|
||||
patch_apply wined3d-CSMT_Main/0173-wined3d-Avoid-calling-wined3d_surface_blt-from-surfa.patch
|
||||
patch_apply wined3d-CSMT_Main/0174-wined3d-Fix-some-uninitialized-memory-accesses.patch
|
||||
patch_apply wined3d-CSMT_Main/0175-wined3d-Enable-CSMT-by-default-print-a-winediag-mess.patch
|
||||
patch_apply wined3d-CSMT_Main/0174-wined3d-Enable-CSMT-by-default-print-a-winediag-mess.patch
|
||||
patch_apply wined3d-CSMT_Main/9999-IfDefined.patch
|
||||
(
|
||||
echo '+ { "Stefan Dösinger", "wined3d: Pass a context to surface_load_sysmem.", 1 },';
|
||||
@ -3087,7 +3086,6 @@ if [ "$enable_wined3d_CSMT_Main" -eq 1 ]; then
|
||||
echo '+ { "Stefan Dösinger", "wined3d: Don'\''t try to sync VBOs manually on OSX with CSMT.", 1 },';
|
||||
echo '+ { "Stefan Dösinger", "wined3d: Render target lock hack.", 1 },';
|
||||
echo '+ { "Matteo Bruni", "wined3d: Avoid calling wined3d_surface_blt() from surface_upload_from_surface().", 1 },';
|
||||
echo '+ { "Sebastian Lackner", "wined3d: Fix some uninitialized memory accesses.", 1 },';
|
||||
echo '+ { "Sebastian Lackner", "wined3d: Enable CSMT by default, print a winediag message informing about this patchset.", 1 },';
|
||||
echo '+ { "Wine Staging Team", "Autogenerated #ifdef patch for wined3d-CSMT_Main.", 1 },';
|
||||
) >> "$patchlist"
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 61070d97c76557046a90cac37fbdf9c5f033adb4 Mon Sep 17 00:00:00 2001
|
||||
From 0d11e8c92575dae298bcf9b830ef155689823c04 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Sun, 17 Nov 2013 19:49:38 +0100
|
||||
Subject: wined3d: Pass a context to surface_blt_fbo.
|
||||
@ -8,7 +8,7 @@ Subject: wined3d: Pass a context to surface_blt_fbo.
|
||||
1 file changed, 42 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index 7a32f7f..a2f8112 100644
|
||||
index f4b9071..8ca5bda 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -860,13 +860,15 @@ static void surface_depth_blt_fbo(const struct wined3d_device *device,
|
||||
@ -42,7 +42,7 @@ index 7a32f7f..a2f8112 100644
|
||||
+
|
||||
+ if (required_rt && required_rt != old_ctx->current_rt)
|
||||
+ {
|
||||
+ restore_rt = context->current_rt;
|
||||
+ restore_rt = old_ctx->current_rt;
|
||||
+ context = context_acquire(device, required_rt);
|
||||
+ }
|
||||
+ else
|
||||
@ -67,7 +67,7 @@ index 7a32f7f..a2f8112 100644
|
||||
}
|
||||
|
||||
static BOOL fbo_blit_supported(const struct wined3d_gl_info *gl_info, enum wined3d_blit_op blit_op,
|
||||
@@ -4140,13 +4158,17 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4294,13 +4312,17 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
NULL, surface->resource.usage, surface->resource.pool, surface->resource.format,
|
||||
NULL, surface->resource.usage, surface->resource.pool, surface->resource.format))
|
||||
{
|
||||
@ -87,7 +87,7 @@ index 7a32f7f..a2f8112 100644
|
||||
return WINED3D_OK;
|
||||
}
|
||||
|
||||
@@ -4161,8 +4183,10 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4315,8 +4337,10 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
DWORD dst_location = srgb ? WINED3D_LOCATION_TEXTURE_SRGB : WINED3D_LOCATION_TEXTURE_RGB;
|
||||
RECT rect = {0, 0, surface->resource.width, surface->resource.height};
|
||||
|
||||
@ -99,7 +99,7 @@ index 7a32f7f..a2f8112 100644
|
||||
|
||||
return WINED3D_OK;
|
||||
}
|
||||
@@ -4292,14 +4316,17 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4447,14 +4471,17 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
|
||||
static void surface_multisample_resolve(struct wined3d_surface *surface)
|
||||
{
|
||||
@ -118,7 +118,7 @@ index 7a32f7f..a2f8112 100644
|
||||
}
|
||||
|
||||
HRESULT surface_load_location(struct wined3d_surface *surface, DWORD location)
|
||||
@@ -5474,11 +5501,15 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
@@ -5629,11 +5656,15 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
&src_rect, src_surface->resource.usage, src_surface->resource.pool, src_surface->resource.format,
|
||||
&dst_rect, dst_surface->resource.usage, dst_surface->resource.pool, dst_surface->resource.format))
|
||||
{
|
||||
@ -136,5 +136,5 @@ index 7a32f7f..a2f8112 100644
|
||||
surface_invalidate_location(dst_surface, ~dst_surface->container->resource.draw_binding);
|
||||
|
||||
--
|
||||
2.1.3
|
||||
2.2.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 72175d9c8fd436a69642594990d9b671ac497f0d Mon Sep 17 00:00:00 2001
|
||||
From 25b2ad076f6f9725353b5b7413ee062c68a89d6f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Thu, 29 Aug 2013 22:25:14 +0200
|
||||
Subject: wined3d: Don't lock the src volume in device_update_volume
|
||||
@ -9,22 +9,25 @@ assumption of the work queue.
|
||||
|
||||
FIXME: Maybe merge this with the previous patch or change their order.
|
||||
---
|
||||
dlls/wined3d/device.c | 10 +---------
|
||||
1 file changed, 1 insertion(+), 9 deletions(-)
|
||||
dlls/wined3d/device.c | 17 ++++-------------
|
||||
1 file changed, 4 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index 5333f23..8d6272d 100644
|
||||
index 5333f23..b2e3db7 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -3402,7 +3402,6 @@ static HRESULT device_update_volume(struct wined3d_context *context,
|
||||
@@ -3401,9 +3401,7 @@ void CDECL wined3d_device_draw_indexed_primitive_instanced(struct wined3d_device
|
||||
static HRESULT device_update_volume(struct wined3d_context *context,
|
||||
struct wined3d_volume *src_volume, struct wined3d_volume *dst_volume)
|
||||
{
|
||||
struct wined3d_const_bo_address data;
|
||||
- struct wined3d_const_bo_address data;
|
||||
- struct wined3d_map_desc src;
|
||||
HRESULT hr;
|
||||
- HRESULT hr;
|
||||
+ struct wined3d_bo_address data;
|
||||
|
||||
TRACE("src_volume %p, dst_volume %p.\n",
|
||||
@@ -3421,19 +3420,12 @@ static HRESULT device_update_volume(struct wined3d_context *context,
|
||||
src_volume, dst_volume);
|
||||
@@ -3421,20 +3419,13 @@ static HRESULT device_update_volume(struct wined3d_context *context,
|
||||
return WINED3DERR_INVALIDCALL;
|
||||
}
|
||||
|
||||
@ -36,15 +39,18 @@ index 5333f23..8d6272d 100644
|
||||
-
|
||||
- data.buffer_object = 0;
|
||||
- data.addr = src.data;
|
||||
- wined3d_volume_upload_data(dst_volume, context, &data);
|
||||
+ wined3d_resource_get_memory(&src_volume->resource, src_volume->resource.map_binding, &data);
|
||||
wined3d_volume_upload_data(dst_volume, context, &data);
|
||||
+ wined3d_volume_upload_data(dst_volume, context, wined3d_const_bo_address(&data));
|
||||
wined3d_resource_invalidate_location(&dst_volume->resource, ~WINED3D_LOCATION_TEXTURE_RGB);
|
||||
|
||||
- hr = wined3d_volume_unmap(src_volume);
|
||||
-
|
||||
return hr;
|
||||
- return hr;
|
||||
+ return WINED3D_OK;
|
||||
}
|
||||
|
||||
/* Context activation is done by the caller */
|
||||
--
|
||||
1.9.1
|
||||
2.2.1
|
||||
|
||||
|
@ -1,47 +0,0 @@
|
||||
From ae26ae32cd73d0ca290196ac9dc02a641c77ed54 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sun, 14 Dec 2014 15:24:44 +0100
|
||||
Subject: wined3d: Fix some uninitialized memory accesses.
|
||||
|
||||
---
|
||||
dlls/wined3d/device.c | 3 +--
|
||||
dlls/wined3d/surface.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index be1ecd6..93331b4 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -3373,7 +3373,6 @@ static HRESULT device_update_volume(struct wined3d_context *context,
|
||||
struct wined3d_volume *src_volume, struct wined3d_volume *dst_volume)
|
||||
{
|
||||
struct wined3d_const_bo_address data;
|
||||
- HRESULT hr;
|
||||
|
||||
TRACE("src_volume %p, dst_volume %p.\n",
|
||||
src_volume, dst_volume);
|
||||
@@ -3397,7 +3396,7 @@ static HRESULT device_update_volume(struct wined3d_context *context,
|
||||
wined3d_volume_upload_data(dst_volume, context, &data);
|
||||
wined3d_resource_invalidate_location(&dst_volume->resource, ~WINED3D_LOCATION_TEXTURE_RGB);
|
||||
|
||||
- return hr;
|
||||
+ return WINED3D_OK;
|
||||
}
|
||||
|
||||
/* Context activation is done by the caller */
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index bf37b7d..9c3f7ce 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -770,7 +770,7 @@ static void surface_blt_fbo(const struct wined3d_device *device,
|
||||
|
||||
if (required_rt && required_rt != old_ctx->current_rt)
|
||||
{
|
||||
- restore_rt = context->current_rt;
|
||||
+ restore_rt = old_ctx->current_rt;
|
||||
context = context_acquire(device, required_rt);
|
||||
}
|
||||
else
|
||||
--
|
||||
1.9.1
|
||||
|
Loading…
x
Reference in New Issue
Block a user