Rebase against 0b79e2caa6f224fc0da672886c07f4f32dda4682.

This commit is contained in:
Alistair Leslie-Hughes 2021-11-02 11:53:23 +11:00
parent b10ac7d8ac
commit fe634350d2
7 changed files with 69 additions and 60 deletions

View File

@ -1,27 +1,34 @@
From f260254e168fbaad0321273037762e218eb6b7a6 Mon Sep 17 00:00:00 2001
From 153efcdc01d57fc29c6d1e80eda52f43666b34a6 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <zfigura@codeweavers.com>
Date: Mon, 6 Jul 2020 14:57:42 -0500
Subject: [PATCH] ntdll: Implement waiting on manual-reset events.
---
dlls/ntdll/unix/esync.c | 22 +++++++++++++++++-----
1 file changed, 17 insertions(+), 5 deletions(-)
dlls/ntdll/unix/esync.c | 26 ++++++++++++++++++--------
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git a/dlls/ntdll/unix/esync.c b/dlls/ntdll/unix/esync.c
index 97d468b2449..4f993689e0d 100644
index 97d468b2449..d58cb6c1ee2 100644
--- a/dlls/ntdll/unix/esync.c
+++ b/dlls/ntdll/unix/esync.c
@@ -483,12 +483,24 @@ NTSTATUS esync_wait_objects( DWORD count, const HANDLE *handles, BOOLEAN wait_an
@@ -38,9 +38,7 @@
#ifdef HAVE_SYS_MMAN_H
# include <sys/mman.h>
#endif
-#ifdef HAVE_SYS_POLL_H
-# include <sys/poll.h>
-#endif
+#include <poll.h>
#ifdef HAVE_SYS_STAT_H
# include <sys/stat.h>
#endif
@@ -483,12 +481,24 @@ NTSTATUS esync_wait_objects( DWORD count, const HANDLE *handles, BOOLEAN wait_an
int64_t value;
ssize_t size;
- if ((size = read( fds[i].fd, &value, sizeof(value) )) == sizeof(value))
+ if (obj->type == ESYNC_MANUAL_EVENT)
{
- /* We found our object. */
- TRACE("Woken up by handle %p [%d].\n", handles[i], i);
- update_grabbed_object( obj );
- return i;
+ {
+ /* Don't grab the object, just check if it's signaled. */
+ if (fds[i].revents & POLLIN)
+ {
@ -30,7 +37,11 @@ index 97d468b2449..4f993689e0d 100644
+ }
+ }
+ else
+ {
{
- /* We found our object. */
- TRACE("Woken up by handle %p [%d].\n", handles[i], i);
- update_grabbed_object( obj );
- return i;
+ if ((size = read( fds[i].fd, &value, sizeof(value) )) == sizeof(value))
+ {
+ /* We found our object. */
@ -42,5 +53,5 @@ index 97d468b2449..4f993689e0d 100644
}
}
--
2.28.0
2.33.0

View File

@ -1,4 +1,4 @@
From f0c0ce75dc3ad0f1ea033bab64ed22cec0d5ca93 Mon Sep 17 00:00:00 2001
From 2b56fefe47ac35cb7f2495745da9b2edb9fcd37c Mon Sep 17 00:00:00 2001
From: Alex Henrie <alexhenrie24@gmail.com>
Date: Tue, 29 Dec 2015 00:48:02 -0700
Subject: [PATCH] mountmgr.sys: Do a device check before returning a default
@ -10,7 +10,7 @@ Fixes https://bugs.winehq.org/show_bug.cgi?id=39793
1 file changed, 24 insertions(+)
diff --git a/dlls/mountmgr.sys/device.c b/dlls/mountmgr.sys/device.c
index 37ba33840b5..c8af6856043 100644
index a6e34ff6976..f2c03dbbb94 100644
--- a/dlls/mountmgr.sys/device.c
+++ b/dlls/mountmgr.sys/device.c
@@ -27,6 +27,9 @@
@ -21,9 +21,9 @@ index 37ba33840b5..c8af6856043 100644
+# include <termios.h>
+#endif
#include <sys/time.h>
#include <sys/stat.h>
#ifdef HAVE_SYS_IOCTL_H
# include <sys/ioctl.h>
@@ -1970,6 +1973,27 @@ static BOOL create_port_device( DRIVER_OBJECT *driver, int n, const char *unix_p
@@ -2240,6 +2243,27 @@ static BOOL create_port_device( DRIVER_OBJECT *driver, int n, const char *unix_p
sprintfW( dos_name, dos_name_format, n );
@ -52,5 +52,5 @@ index 37ba33840b5..c8af6856043 100644
unlink( dosdevices_path );
if (symlink( unix_path, dosdevices_path ) != 0)
--
2.28.0
2.33.0

View File

@ -1,4 +1,4 @@
From e54feda95d0e88080d118d2079c62f091dffe3e3 Mon Sep 17 00:00:00 2001
From a4d9cd0e60613fac787bb65e6a22fb1b24e19179 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Sat, 22 May 2021 17:38:50 -0500
Subject: [PATCH] wined3d: Make depth bounds test into a proper state.
@ -12,10 +12,10 @@ Subject: [PATCH] wined3d: Make depth bounds test into a proper state.
5 files changed, 98 insertions(+), 31 deletions(-)
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
index 1b4ed519260..33a8519a613 100644
index bcd26b6fbb1..88f47e4437c 100644
--- a/dlls/wined3d/cs.c
+++ b/dlls/wined3d/cs.c
@@ -145,6 +145,7 @@ enum wined3d_cs_op
@@ -152,6 +152,7 @@ enum wined3d_cs_op
WINED3D_CS_OP_SET_RENDER_STATE,
WINED3D_CS_OP_SET_TEXTURE_STATE,
WINED3D_CS_OP_SET_SAMPLER_STATE,
@ -23,7 +23,7 @@ index 1b4ed519260..33a8519a613 100644
WINED3D_CS_OP_SET_TRANSFORM,
WINED3D_CS_OP_SET_CLIP_PLANE,
WINED3D_CS_OP_SET_COLOR_KEY,
@@ -395,6 +396,12 @@ struct wined3d_cs_set_sampler_state
@@ -402,6 +403,12 @@ struct wined3d_cs_set_sampler_state
DWORD value;
};
@ -36,7 +36,7 @@ index 1b4ed519260..33a8519a613 100644
struct wined3d_cs_set_transform
{
enum wined3d_cs_op opcode;
@@ -619,6 +626,7 @@ static const char *debug_cs_op(enum wined3d_cs_op op)
@@ -626,6 +633,7 @@ static const char *debug_cs_op(enum wined3d_cs_op op)
WINED3D_TO_STR(WINED3D_CS_OP_SET_RENDER_STATE);
WINED3D_TO_STR(WINED3D_CS_OP_SET_TEXTURE_STATE);
WINED3D_TO_STR(WINED3D_CS_OP_SET_SAMPLER_STATE);
@ -44,7 +44,7 @@ index 1b4ed519260..33a8519a613 100644
WINED3D_TO_STR(WINED3D_CS_OP_SET_TRANSFORM);
WINED3D_TO_STR(WINED3D_CS_OP_SET_CLIP_PLANE);
WINED3D_TO_STR(WINED3D_CS_OP_SET_COLOR_KEY);
@@ -1939,6 +1947,28 @@ void wined3d_device_context_emit_set_sampler_state(struct wined3d_device_context
@@ -1946,6 +1954,28 @@ void wined3d_device_context_emit_set_sampler_state(struct wined3d_device_context
wined3d_device_context_submit(context, WINED3D_CS_QUEUE_DEFAULT);
}
@ -73,7 +73,7 @@ index 1b4ed519260..33a8519a613 100644
static void wined3d_cs_exec_set_transform(struct wined3d_cs *cs, const void *data)
{
const struct wined3d_cs_set_transform *op = data;
@@ -2963,6 +2993,7 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void
@@ -2993,6 +3023,7 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void
/* WINED3D_CS_OP_SET_RENDER_STATE */ wined3d_cs_exec_set_render_state,
/* WINED3D_CS_OP_SET_TEXTURE_STATE */ wined3d_cs_exec_set_texture_state,
/* WINED3D_CS_OP_SET_SAMPLER_STATE */ wined3d_cs_exec_set_sampler_state,
@ -82,11 +82,11 @@ index 1b4ed519260..33a8519a613 100644
/* WINED3D_CS_OP_SET_CLIP_PLANE */ wined3d_cs_exec_set_clip_plane,
/* WINED3D_CS_OP_SET_COLOR_KEY */ wined3d_cs_exec_set_color_key,
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 436c4dfe854..b0c7579b4ed 100644
index c5de58c29c9..b5a6bde6602 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -1923,6 +1923,14 @@ out:
wined3d_mutex_unlock();
@@ -1925,6 +1925,14 @@ out:
wined3d_device_context_unlock(context);
}
+static void wined3d_device_context_set_depth_bounds(struct wined3d_device_context *context,
@ -100,7 +100,7 @@ index 436c4dfe854..b0c7579b4ed 100644
void CDECL wined3d_device_context_set_viewports(struct wined3d_device_context *context, unsigned int viewport_count,
const struct wined3d_viewport *viewports)
{
@@ -3612,7 +3620,8 @@ static void wined3d_device_set_texture(struct wined3d_device *device,
@@ -3645,7 +3653,8 @@ static void wined3d_device_set_texture(struct wined3d_device *device,
void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
struct wined3d_stateblock *stateblock)
{
@ -110,7 +110,7 @@ index 436c4dfe854..b0c7579b4ed 100644
const struct wined3d_stateblock_state *state = &stateblock->stateblock_state;
const struct wined3d_saved_states *changed = &stateblock->changed;
const unsigned int word_bit_count = sizeof(DWORD) * CHAR_BIT;
@@ -3718,7 +3727,7 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
@@ -3751,7 +3760,7 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
case WINED3D_RS_COLORWRITEENABLE1:
case WINED3D_RS_COLORWRITEENABLE2:
case WINED3D_RS_COLORWRITEENABLE3:
@ -119,7 +119,7 @@ index 436c4dfe854..b0c7579b4ed 100644
break;
case WINED3D_RS_BACK_STENCILFAIL:
@@ -3737,7 +3746,7 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
@@ -3770,7 +3779,7 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
case WINED3D_RS_ZENABLE:
case WINED3D_RS_ZFUNC:
case WINED3D_RS_ZWRITEENABLE:
@ -128,7 +128,7 @@ index 436c4dfe854..b0c7579b4ed 100644
break;
case WINED3D_RS_FILLMODE:
@@ -3746,9 +3755,15 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
@@ -3779,9 +3788,15 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
case WINED3D_RS_DEPTHBIAS:
case WINED3D_RS_SCISSORTESTENABLE:
case WINED3D_RS_ANTIALIASEDLINEENABLE:
@ -145,7 +145,7 @@ index 436c4dfe854..b0c7579b4ed 100644
default:
wined3d_device_set_render_state(device, idx, state->rs[idx]);
break;
@@ -3937,6 +3952,20 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
@@ -3970,6 +3985,20 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device,
}
}
@ -167,10 +167,10 @@ index 436c4dfe854..b0c7579b4ed 100644
{
map = changed->textureState[i];
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index 8316269afcf..6cd4ff30458 100644
index fd2ade572c8..c873841ffb6 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -2040,42 +2040,31 @@ static void state_tessellation(struct wined3d_context *context, const struct win
@@ -2046,42 +2046,31 @@ static void state_tessellation(struct wined3d_context *context, const struct win
state->render_states[WINED3D_RS_ENABLEADAPTIVETESSELLATION]);
}
@ -227,7 +227,7 @@ index 8316269afcf..6cd4ff30458 100644
}
static void state_wrapu(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
@@ -4685,6 +4674,8 @@ const struct wined3d_state_entry_template misc_state_template_gl[] =
@@ -4691,6 +4680,8 @@ const struct wined3d_state_entry_template misc_state_template_gl[] =
{ STATE_DEPTH_STENCIL, { STATE_DEPTH_STENCIL, depth_stencil_2s }, EXT_STENCIL_TWO_SIDE },
{ STATE_DEPTH_STENCIL, { STATE_DEPTH_STENCIL, depth_stencil }, WINED3D_GL_EXT_NONE },
{ STATE_STENCIL_REF, { STATE_DEPTH_STENCIL, NULL }, WINED3D_GL_EXT_NONE },
@ -236,7 +236,7 @@ index 8316269afcf..6cd4ff30458 100644
{ STATE_STREAMSRC, { STATE_STREAMSRC, streamsrc }, WINED3D_GL_EXT_NONE },
{ STATE_VDECL, { STATE_VDECL, vdecl_miscpart }, WINED3D_GL_EXT_NONE },
{ STATE_RASTERIZER, { STATE_RASTERIZER, rasterizer_cc }, ARB_CLIP_CONTROL },
@@ -4798,7 +4789,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] =
@@ -4804,7 +4795,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] =
{ STATE_RENDER(WINED3D_RS_ADAPTIVETESS_Y), { STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION),NULL }, WINED3D_GL_EXT_NONE },
{ STATE_RENDER(WINED3D_RS_ADAPTIVETESS_Z), { STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION),NULL }, WINED3D_GL_EXT_NONE },
{ STATE_RENDER(WINED3D_RS_ADAPTIVETESS_W), { STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION),NULL }, WINED3D_GL_EXT_NONE },
@ -245,7 +245,7 @@ index 8316269afcf..6cd4ff30458 100644
{ STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_msaa }, ARB_MULTISAMPLE },
{ STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_msaa_w }, WINED3D_GL_EXT_NONE },
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 47718c9f710..39d39396a6e 100644
index 29326668e07..84cdea02991 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -5323,6 +5323,8 @@ const char *debug_d3dstate(DWORD state)
@ -258,10 +258,10 @@ index 47718c9f710..39d39396a6e 100644
return wine_dbg_sprintf("UNKNOWN_STATE(%#x)", state);
}
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 56c90ba6606..e7ee1c1478a 100644
index aa8974366a6..735dbff805e 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -1854,7 +1854,10 @@ void dispatch_compute(struct wined3d_device *device, const struct wined3d_state
@@ -1861,7 +1861,10 @@ void dispatch_compute(struct wined3d_device *device, const struct wined3d_state
#define STATE_STENCIL_REF (STATE_DEPTH_STENCIL + 1)
#define STATE_IS_STENCIL_REF(a) ((a) == STATE_STENCIL_REF)
@ -273,7 +273,7 @@ index 56c90ba6606..e7ee1c1478a 100644
#define STATE_COMPUTE_SHADER (STATE_COMPUTE_OFFSET)
#define STATE_IS_COMPUTE_SHADER(a) ((a) == STATE_COMPUTE_SHADER)
@@ -3703,6 +3706,13 @@ struct wined3d_light_state
@@ -3714,6 +3717,13 @@ struct wined3d_light_state
const struct wined3d_light_info *lights[WINED3D_MAX_ACTIVE_LIGHTS];
};
@ -287,7 +287,7 @@ index 56c90ba6606..e7ee1c1478a 100644
#define WINED3D_STATE_NO_REF 0x00000001
#define WINED3D_STATE_INIT_DEFAULT 0x00000002
@@ -3757,8 +3767,11 @@ struct wined3d_state
@@ -3768,8 +3778,11 @@ struct wined3d_state
struct wined3d_blend_state *blend_state;
struct wined3d_color blend_factor;
unsigned int sample_mask;
@ -299,7 +299,7 @@ index 56c90ba6606..e7ee1c1478a 100644
struct wined3d_rasterizer_state *rasterizer_state;
};
@@ -4878,6 +4891,8 @@ void wined3d_device_context_emit_set_clip_plane(struct wined3d_device_context *c
@@ -4914,6 +4927,8 @@ void wined3d_device_context_emit_set_clip_plane(struct wined3d_device_context *c
void wined3d_device_context_emit_set_constant_buffers(struct wined3d_device_context *context,
enum wined3d_shader_type type, unsigned int start_idx, unsigned int count,
const struct wined3d_constant_buffer_state *buffers) DECLSPEC_HIDDEN;

View File

@ -1,4 +1,4 @@
From c7cbd42a6085d03a94ee4ac9b77834b3725bf033 Mon Sep 17 00:00:00 2001
From 6c3c8c98a9f28aa2d51626fde58efcb78cf08ab1 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Sat, 22 May 2021 18:11:07 -0500
Subject: [PATCH] nvapi: Implement NvAPI_D3D11_SetDepthBoundsTest().
@ -117,11 +117,11 @@ index c8b66ac2fa3..b8b4750203a 100644
/* d3d9 tests */
wc.lpfnWndProc = DefWindowProcA;
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index b0c7579b4ed..8c61c530812 100644
index b5a6bde6602..607af1514dc 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -1923,7 +1923,7 @@ out:
wined3d_mutex_unlock();
@@ -1925,7 +1925,7 @@ out:
wined3d_device_context_unlock(context);
}
-static void wined3d_device_context_set_depth_bounds(struct wined3d_device_context *context,
@ -130,7 +130,7 @@ index b0c7579b4ed..8c61c530812 100644
{
TRACE("context %p, enable %d, min %.8e, max %.8e.\n", context, enable, min, max);
diff --git a/dlls/wined3d/wined3d.spec b/dlls/wined3d/wined3d.spec
index 1bce4def265..802194dcbec 100644
index 48bea5980ff..81ac821c1c6 100644
--- a/dlls/wined3d/wined3d.spec
+++ b/dlls/wined3d/wined3d.spec
@@ -124,6 +124,7 @@
@ -142,7 +142,7 @@ index 1bce4def265..802194dcbec 100644
@ cdecl wined3d_device_context_set_depth_stencil_view(ptr ptr)
@ cdecl wined3d_device_context_set_index_buffer(ptr ptr long long)
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
index 7be893b8f21..689fc55fdfe 100644
index 7a6588ea4f4..d90569238fc 100644
--- a/include/wine/wined3d.h
+++ b/include/wine/wined3d.h
@@ -2513,6 +2513,8 @@ void __cdecl wined3d_device_context_set_blend_state(struct wined3d_device_contex

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "5f93c683ab0163cb34482fe18549cf249b8b074b"
echo "0b79e2caa6f224fc0da672886c07f4f32dda4682"
}
# Show version information

View File

@ -1,4 +1,4 @@
From a586ff9412c92a1497e78eefdb7d90fc5e2a8c04 Mon Sep 17 00:00:00 2001
From 64a1a23ec691d3e5f732b47c120e2d801cdfad90 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Mon, 30 Mar 2015 13:04:23 +0200
Subject: [PATCH] server: Store file security attributes with extended file
@ -9,10 +9,10 @@ Subject: [PATCH] server: Store file security attributes with extended file
1 file changed, 78 insertions(+)
diff --git a/server/file.c b/server/file.c
index 32f64282c96..4e601b18251 100644
index 850b33bd3dd..054c15ff879 100644
--- a/server/file.c
+++ b/server/file.c
@@ -32,6 +32,7 @@
@@ -31,11 +31,21 @@
#include <sys/time.h>
#include <sys/types.h>
#include <time.h>
@ -20,10 +20,8 @@ index 32f64282c96..4e601b18251 100644
#include <unistd.h>
#ifdef HAVE_UTIME_H
#include <utime.h>
@@ -39,6 +40,15 @@
#ifdef HAVE_POLL_H
#include <poll.h>
#endif
#include <poll.h>
+#ifdef HAVE_ATTR_XATTR_H
+#undef XATTR_ADDITIONAL_OPTIONS
+#include <attr/xattr.h>
@ -36,7 +34,7 @@ index 32f64282c96..4e601b18251 100644
#include "ntstatus.h"
#define WIN32_NO_STATUS
@@ -66,6 +76,21 @@ struct type_descr file_type =
@@ -63,6 +73,21 @@ struct type_descr file_type =
},
};
@ -58,7 +56,7 @@ index 32f64282c96..4e601b18251 100644
struct file
{
struct object obj; /* object header */
@@ -216,6 +241,56 @@ int is_file_executable( const char *name )
@@ -215,6 +240,56 @@ int is_file_executable( const char *name )
return len >= 4 && (!strcasecmp( name + len - 4, ".exe") || !strcasecmp( name + len - 4, ".com" ));
}
@ -115,7 +113,7 @@ index 32f64282c96..4e601b18251 100644
static struct object *create_file( struct fd *root, const char *nameptr, data_size_t len,
struct unicode_str nt_name,
unsigned int access, unsigned int sharing, int create,
@@ -614,6 +689,9 @@ int set_file_sd( struct object *obj, struct fd *fd, mode_t *mode, uid_t *uid,
@@ -613,6 +688,9 @@ int set_file_sd( struct object *obj, struct fd *fd, mode_t *mode, uid_t *uid,
*mode = (*mode & S_IFMT) | new_mode;
}
@ -126,5 +124,5 @@ index 32f64282c96..4e601b18251 100644
obj->sd = new_sd;
return 1;
--
2.20.1
2.33.0

View File

@ -1 +1 @@
5f93c683ab0163cb34482fe18549cf249b8b074b
0b79e2caa6f224fc0da672886c07f4f32dda4682