You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Compare commits
23 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
93e94fcbc0 | ||
|
fa5989b7aa | ||
|
8f579c4eed | ||
|
278310cf80 | ||
|
544f90dacc | ||
|
9937bf0463 | ||
|
155e98e765 | ||
|
2653c32b45 | ||
|
a2fcffc18e | ||
|
82e4617d86 | ||
|
24753f8756 | ||
|
0ed3e9c774 | ||
|
61c3c024a2 | ||
|
7f17af3a42 | ||
|
4c51f4f5f6 | ||
|
3b7c98ebf1 | ||
|
2056903cdf | ||
|
65ca056d29 | ||
|
edb3417124 | ||
|
7655d14b6a | ||
|
61120ad0dd | ||
|
915b0a246f | ||
|
68918863dc |
@@ -1,36 +0,0 @@
|
||||
From 5d62ab1fd576aa9e11a387a6b2a1b250aecc1803 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Pouech <eric.pouech@gmail.com>
|
||||
Date: Fri, 5 Nov 2021 07:56:04 +1100
|
||||
Subject: [PATCH] configure.ac: let dwarf4 be Wine's default debug format
|
||||
|
||||
---
|
||||
configure.ac | 6 ++----
|
||||
1 file changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 57bd9a6f9ec..0196af56783 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1051,8 +1051,7 @@ then
|
||||
if test "x$ac_debug_format_seen" = x
|
||||
then
|
||||
case $CROSSDEBUG in
|
||||
- *dwarf) WINE_TRY_CROSSCFLAGS([-gdwarf-2])
|
||||
- WINE_TRY_CROSSCFLAGS([-gstrict-dwarf]) ;;
|
||||
+ *dwarf) WINE_TRY_CROSSCFLAGS([-gdwarf-4]) ;;
|
||||
pdb) WINE_TRY_CROSSCFLAGS([-gcodeview]) ;;
|
||||
esac
|
||||
fi
|
||||
@@ -1865,8 +1864,7 @@ char*f(const char *h,char n) {return strchr(h,n);}]])],[ac_cv_c_logicalop_noisy=
|
||||
done
|
||||
if test "x$ac_debug_format_seen" = xdefault
|
||||
then
|
||||
- WINE_TRY_CFLAGS([-gdwarf-2])
|
||||
- WINE_TRY_CFLAGS([-gstrict-dwarf])
|
||||
+ WINE_TRY_CFLAGS([-gdwarf-4])
|
||||
fi
|
||||
|
||||
dnl Disable gcc builtins except for Mingw
|
||||
--
|
||||
2.33.0
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From cb01601870a6299e0da0a956269ef24ed79d5035 Mon Sep 17 00:00:00 2001
|
||||
From 0c01c25728780e3419f37ef612b14cc7e29f65f5 Mon Sep 17 00:00:00 2001
|
||||
From: Lucian Poston <lucianposton@pm.me>
|
||||
Date: Mon, 21 May 2018 18:13:00 -0700
|
||||
Subject: [PATCH] dwrite: Use font fallback when mapping characters
|
||||
@@ -11,10 +11,10 @@ Signed-off-by: Lucian Poston <lucianposton@pm.me>
|
||||
3 files changed, 74 insertions(+), 63 deletions(-)
|
||||
|
||||
diff --git a/dlls/dwrite/analyzer.c b/dlls/dwrite/analyzer.c
|
||||
index 6b74a23540a..5827e87fdf5 100644
|
||||
index 7112ca71932..43f8c659bfd 100644
|
||||
--- a/dlls/dwrite/analyzer.c
|
||||
+++ b/dlls/dwrite/analyzer.c
|
||||
@@ -2062,6 +2062,7 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
@@ -2088,6 +2088,7 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
IDWriteFont **mapped_font)
|
||||
{
|
||||
const struct fallback_mapping *mapping;
|
||||
@@ -22,7 +22,7 @@ index 6b74a23540a..5827e87fdf5 100644
|
||||
HRESULT hr;
|
||||
UINT32 i;
|
||||
|
||||
@@ -2073,9 +2074,15 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
@@ -2099,9 +2100,15 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ index 6b74a23540a..5827e87fdf5 100644
|
||||
weight, style, stretch, mapped_font);
|
||||
if (hr == S_OK) {
|
||||
TRACE("Created fallback font using family %s.\n", debugstr_w(mapping->families[i]));
|
||||
@@ -2132,32 +2139,66 @@ static HRESULT WINAPI fontfallback_MapCharacters(IDWriteFontFallback1 *iface, ID
|
||||
@@ -2158,32 +2165,66 @@ static HRESULT WINAPI fontfallback_MapCharacters(IDWriteFontFallback1 *iface, ID
|
||||
|
||||
if (basefamily && *basefamily) {
|
||||
hr = create_matching_font(basecollection, basefamily, weight, style, stretch, ret_font);
|
||||
@@ -121,13 +121,13 @@ index 6b74a23540a..5827e87fdf5 100644
|
||||
+ }
|
||||
+
|
||||
done:
|
||||
heap_free(buff);
|
||||
free(buff);
|
||||
return hr;
|
||||
diff --git a/dlls/dwrite/layout.c b/dlls/dwrite/layout.c
|
||||
index 99048b97a3c..64d8eef6f59 100644
|
||||
index f28c71082c0..9a884824b76 100644
|
||||
--- a/dlls/dwrite/layout.c
|
||||
+++ b/dlls/dwrite/layout.c
|
||||
@@ -958,6 +958,12 @@ static HRESULT layout_resolve_fonts(struct dwrite_textlayout *layout)
|
||||
@@ -964,6 +964,12 @@ static HRESULT layout_resolve_fonts(struct dwrite_textlayout *layout)
|
||||
goto fatal;
|
||||
}
|
||||
|
||||
@@ -141,7 +141,7 @@ index 99048b97a3c..64d8eef6f59 100644
|
||||
IDWriteFont_Release(font);
|
||||
if (FAILED(hr)) {
|
||||
diff --git a/dlls/dwrite/tests/layout.c b/dlls/dwrite/tests/layout.c
|
||||
index cea581a0bef..ecefbe9c87a 100644
|
||||
index a1bff0d26d6..929d6ec1cc2 100644
|
||||
--- a/dlls/dwrite/tests/layout.c
|
||||
+++ b/dlls/dwrite/tests/layout.c
|
||||
@@ -3368,35 +3368,23 @@ todo_wine
|
||||
@@ -268,7 +268,7 @@ index cea581a0bef..ecefbe9c87a 100644
|
||||
|
||||
exists = FALSE;
|
||||
hr = IDWriteFont_GetInformationalStrings(font, DWRITE_INFORMATIONAL_STRING_WIN32_FAMILY_NAMES, &strings, &exists);
|
||||
@@ -6564,34 +6540,22 @@ static void test_GetMetrics_with_custom_fontcollection(void)
|
||||
@@ -6669,34 +6645,22 @@ static void test_GetMetrics_with_custom_fontcollection(void)
|
||||
ok(hr == S_OK, "got 0x%08x\n", hr);
|
||||
count = 9999;
|
||||
hr = IDWriteTextLayout_GetClusterMetrics(layout, clusters, 4, &count);
|
||||
@@ -304,5 +304,5 @@ index cea581a0bef..ecefbe9c87a 100644
|
||||
IDWriteTextLayout_Release(layout);
|
||||
|
||||
--
|
||||
2.20.1
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From d6b29a6153e786ff7a79bdbb7c33977e19c6e267 Mon Sep 17 00:00:00 2001
|
||||
From f2401390227b40c68bb97983fc028d5060a70e8c Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Wed, 13 Jun 2018 10:44:49 -0500
|
||||
Subject: [PATCH] configure: Check for sys/eventfd.h, ppoll(), and shm_open().
|
||||
@@ -7,52 +7,48 @@ We use ppoll() instead of poll() for the better time granularity.
|
||||
|
||||
Although perhaps we shouldn't since the server doesn't do this.
|
||||
---
|
||||
configure.ac | 12 ++++++++
|
||||
include/config.h.in | 9 ++++++
|
||||
3 files changed, 89 insertions(+)
|
||||
configure.ac | 8 ++++++++
|
||||
include/config.h.in | 9 +++++++++
|
||||
2 files changed, 17 insertions(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 718ab1ca50e..d5f82ad2af4 100644
|
||||
index 9683798b57b..b4465a98794 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -496,6 +496,7 @@ AC_CHECK_HEADERS(\
|
||||
@@ -478,6 +478,7 @@ AC_CHECK_HEADERS(\
|
||||
sys/cdio.h \
|
||||
sys/epoll.h \
|
||||
sys/event.h \
|
||||
+ sys/eventfd.h \
|
||||
sys/filio.h \
|
||||
sys/ioctl.h \
|
||||
sys/ipc.h \
|
||||
@@ -2158,6 +2159,7 @@ AC_CHECK_FUNCS(\
|
||||
sys/link.h \
|
||||
@@ -1991,6 +1992,7 @@ AC_CHECK_FUNCS(\
|
||||
port_create \
|
||||
posix_fadvise \
|
||||
posix_fallocate \
|
||||
+ ppoll \
|
||||
prctl \
|
||||
proc_pidinfo \
|
||||
renameat \
|
||||
@@ -2199,6 +2201,16 @@ case $host_os in
|
||||
sched_yield \
|
||||
@@ -2033,6 +2035,12 @@ case $host_os in
|
||||
;;
|
||||
esac
|
||||
|
||||
+dnl Check for shm_open which may be in -lrt
|
||||
+if test "$ac_cv_header_sys_mman_h" = "yes" -a "x$RT_LIBS" = "x"
|
||||
+then
|
||||
+ ac_save_LIBS=$LIBS
|
||||
+ AC_SEARCH_LIBS(shm_open, rt,
|
||||
+ [AC_DEFINE(HAVE_SHM_OPEN, 1, [Define to 1 if you have the `shm_open' function.])
|
||||
+ test "$ac_res" = "none required" || AC_SUBST(RT_LIBS,"$ac_res")])
|
||||
+fi
|
||||
+ac_save_LIBS=$LIBS
|
||||
+AC_SEARCH_LIBS(shm_open, rt,
|
||||
+ [AC_DEFINE(HAVE_SHM_OPEN, 1, [Define to 1 if you have the `shm_open' function.])
|
||||
+ test "$ac_res" = "none required" || AC_SUBST(RT_LIBS,"$ac_res")])
|
||||
+LIBS=$ac_save_LIBS
|
||||
+
|
||||
dnl **** Check for OpenLDAP ***
|
||||
if test "x$with_ldap" != "xno"
|
||||
then
|
||||
diff --git a/include/config.h.in b/include/config.h.in
|
||||
index e975ca8a55d..a19789dad8c 100644
|
||||
index 197c3b97f09..13f822cb36c 100644
|
||||
--- a/include/config.h.in
|
||||
+++ b/include/config.h.in
|
||||
@@ -474,6 +474,9 @@
|
||||
@@ -362,6 +362,9 @@
|
||||
/* Define to 1 if you have the `posix_fallocate' function. */
|
||||
#undef HAVE_POSIX_FALLOCATE
|
||||
|
||||
@@ -62,7 +58,7 @@ index e975ca8a55d..a19789dad8c 100644
|
||||
/* Define to 1 if you have the `prctl' function. */
|
||||
#undef HAVE_PRCTL
|
||||
|
||||
@@ -546,6 +549,9 @@
|
||||
@@ -434,6 +437,9 @@
|
||||
/* Define to 1 if `interface_id' is a member of `sg_io_hdr_t'. */
|
||||
#undef HAVE_SG_IO_HDR_T_INTERFACE_ID
|
||||
|
||||
@@ -72,7 +68,7 @@ index e975ca8a55d..a19789dad8c 100644
|
||||
/* Define if sigaddset is supported */
|
||||
#undef HAVE_SIGADDSET
|
||||
|
||||
@@ -695,6 +701,9 @@
|
||||
@@ -574,6 +580,9 @@
|
||||
/* Define to 1 if you have the <sys/epoll.h> header file. */
|
||||
#undef HAVE_SYS_EPOLL_H
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 2e40c85732d66a427927d26d0d560c835187fcf2 Mon Sep 17 00:00:00 2001
|
||||
From 27524b275c81c1c9057e4b4ca3d9cec734a3bd8a Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Thu, 7 Jun 2018 20:09:59 -0500
|
||||
Subject: [PATCH] server: Create server objects for eventfd-based
|
||||
@@ -6,16 +6,16 @@ Subject: [PATCH] server: Create server objects for eventfd-based
|
||||
|
||||
---
|
||||
server/Makefile.in | 1 +
|
||||
server/esync.c | 320 ++++++++++++++++++++++++++++++++++++++++++++
|
||||
server/esync.c | 318 ++++++++++++++++++++++++++++++++++++++++++++
|
||||
server/esync.h | 22 +++
|
||||
server/main.c | 4 +
|
||||
server/protocol.def | 25 +++-
|
||||
5 files changed, 371 insertions(+), 1 deletion(-)
|
||||
5 files changed, 369 insertions(+), 1 deletion(-)
|
||||
create mode 100644 server/esync.c
|
||||
create mode 100644 server/esync.h
|
||||
|
||||
diff --git a/server/Makefile.in b/server/Makefile.in
|
||||
index b58ce1e3002..5f225fd0591 100644
|
||||
index c81a2112632..da20dff9f56 100644
|
||||
--- a/server/Makefile.in
|
||||
+++ b/server/Makefile.in
|
||||
@@ -11,6 +11,7 @@ C_SRCS = \
|
||||
@@ -28,10 +28,10 @@ index b58ce1e3002..5f225fd0591 100644
|
||||
file.c \
|
||||
diff --git a/server/esync.c b/server/esync.c
|
||||
new file mode 100644
|
||||
index 00000000000..a571855c70a
|
||||
index 00000000000..b9dbfa322bc
|
||||
--- /dev/null
|
||||
+++ b/server/esync.c
|
||||
@@ -0,0 +1,320 @@
|
||||
@@ -0,0 +1,318 @@
|
||||
+/*
|
||||
+ * eventfd-based synchronization objects
|
||||
+ *
|
||||
@@ -53,7 +53,7 @@ index 00000000000..a571855c70a
|
||||
+ */
|
||||
+
|
||||
+#include "config.h"
|
||||
+#include "wine/port.h"
|
||||
+
|
||||
+
|
||||
+#include <fcntl.h>
|
||||
+#include <stdio.h>
|
||||
@@ -61,9 +61,7 @@ index 00000000000..a571855c70a
|
||||
+#ifdef HAVE_SYS_EVENTFD_H
|
||||
+# include <sys/eventfd.h>
|
||||
+#endif
|
||||
+#ifdef HAVE_SYS_MMAN_H
|
||||
+# include <sys/mman.h>
|
||||
+#endif
|
||||
+#include <sys/mman.h>
|
||||
+#ifdef HAVE_SYS_STAT_H
|
||||
+# include <sys/stat.h>
|
||||
+#endif
|
||||
@@ -381,10 +379,10 @@ index 00000000000..7ca4ca89394
|
||||
+extern int do_esync(void);
|
||||
+void esync_init(void);
|
||||
diff --git a/server/main.c b/server/main.c
|
||||
index dae08339874..f68888d0fa8 100644
|
||||
index a134d811d82..3436b0871b4 100644
|
||||
--- a/server/main.c
|
||||
+++ b/server/main.c
|
||||
@@ -37,6 +37,7 @@
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "thread.h"
|
||||
#include "request.h"
|
||||
#include "unicode.h"
|
||||
@@ -392,7 +390,7 @@ index dae08339874..f68888d0fa8 100644
|
||||
|
||||
/* command-line options */
|
||||
int debug_level = 0;
|
||||
@@ -141,6 +142,9 @@ int main( int argc, char *argv[] )
|
||||
@@ -229,6 +230,9 @@ int main( int argc, char *argv[] )
|
||||
sock_init();
|
||||
open_master_socket();
|
||||
|
||||
@@ -403,10 +401,10 @@ index dae08339874..f68888d0fa8 100644
|
||||
set_current_time();
|
||||
init_scheduler();
|
||||
diff --git a/server/protocol.def b/server/protocol.def
|
||||
index 10da65be735..22050c65f06 100644
|
||||
index c413cc7d7bb..607d56a666c 100644
|
||||
--- a/server/protocol.def
|
||||
+++ b/server/protocol.def
|
||||
@@ -3690,7 +3690,6 @@ struct handle_info
|
||||
@@ -3733,7 +3733,6 @@ struct handle_info
|
||||
obj_handle_t handle; /* process handle */
|
||||
@END
|
||||
|
||||
@@ -414,7 +412,7 @@ index 10da65be735..22050c65f06 100644
|
||||
/* Iterate thread list for process */
|
||||
@REQ(get_next_thread)
|
||||
obj_handle_t process; /* process handle */
|
||||
@@ -3701,3 +3700,27 @@ struct handle_info
|
||||
@@ -3744,3 +3743,27 @@ struct handle_info
|
||||
@REPLY
|
||||
obj_handle_t handle; /* next thread handle */
|
||||
@END
|
||||
@@ -443,5 +441,5 @@ index 10da65be735..22050c65f06 100644
|
||||
+ unsigned int shm_idx;
|
||||
+@END
|
||||
--
|
||||
2.30.2
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,25 +1,25 @@
|
||||
From b569bf796e685232a6858b1daa2950408c422adf Mon Sep 17 00:00:00 2001
|
||||
From 291fd879b030b16238329ff4f530ab3577ea6fc0 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 12:09:22 -0500
|
||||
Subject: [PATCH] ntdll: Create eventfd-based objects for semaphores.
|
||||
|
||||
---
|
||||
dlls/ntdll/Makefile.in | 1 +
|
||||
dlls/ntdll/unix/esync.c | 273 +++++++++++++++++++++++++++++++++++++++
|
||||
dlls/ntdll/unix/esync.c | 271 +++++++++++++++++++++++++++++++++++++++
|
||||
dlls/ntdll/unix/esync.h | 35 +++++
|
||||
dlls/ntdll/unix/loader.c | 2 +
|
||||
dlls/ntdll/unix/server.c | 4 +-
|
||||
dlls/ntdll/unix/sync.c | 4 +
|
||||
server/esync.c | 1 +
|
||||
7 files changed, 318 insertions(+), 2 deletions(-)
|
||||
7 files changed, 316 insertions(+), 2 deletions(-)
|
||||
create mode 100644 dlls/ntdll/unix/esync.c
|
||||
create mode 100644 dlls/ntdll/unix/esync.h
|
||||
|
||||
diff --git a/dlls/ntdll/Makefile.in b/dlls/ntdll/Makefile.in
|
||||
index aac7f8eead7..7ea80f19481 100644
|
||||
index 185bc563e68..d7c757cab32 100644
|
||||
--- a/dlls/ntdll/Makefile.in
|
||||
+++ b/dlls/ntdll/Makefile.in
|
||||
@@ -45,6 +45,7 @@ C_SRCS = \
|
||||
@@ -46,6 +46,7 @@ C_SRCS = \
|
||||
unix/cdrom.c \
|
||||
unix/debug.c \
|
||||
unix/env.c \
|
||||
@@ -29,10 +29,10 @@ index aac7f8eead7..7ea80f19481 100644
|
||||
unix/loadorder.c \
|
||||
diff --git a/dlls/ntdll/unix/esync.c b/dlls/ntdll/unix/esync.c
|
||||
new file mode 100644
|
||||
index 00000000000..7c409c7a9ca
|
||||
index 00000000000..9e1ef7d8afd
|
||||
--- /dev/null
|
||||
+++ b/dlls/ntdll/unix/esync.c
|
||||
@@ -0,0 +1,273 @@
|
||||
@@ -0,0 +1,271 @@
|
||||
+/*
|
||||
+ * eventfd-based synchronization objects
|
||||
+ *
|
||||
@@ -64,9 +64,7 @@ index 00000000000..7c409c7a9ca
|
||||
+#include <fcntl.h>
|
||||
+#include <stdarg.h>
|
||||
+#include <stdlib.h>
|
||||
+#ifdef HAVE_SYS_MMAN_H
|
||||
+# include <sys/mman.h>
|
||||
+#endif
|
||||
+#include <sys/mman.h>
|
||||
+#ifdef HAVE_SYS_STAT_H
|
||||
+# include <sys/stat.h>
|
||||
+#endif
|
||||
@@ -348,10 +346,10 @@ index 00000000000..a50a755149a
|
||||
+
|
||||
+extern int receive_fd( obj_handle_t *handle ) DECLSPEC_HIDDEN;
|
||||
diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c
|
||||
index dfc0d4c9a09..310556948aa 100644
|
||||
index 8f20da7eece..befa355a4fc 100644
|
||||
--- a/dlls/ntdll/unix/loader.c
|
||||
+++ b/dlls/ntdll/unix/loader.c
|
||||
@@ -86,6 +86,7 @@
|
||||
@@ -89,6 +89,7 @@
|
||||
#include "winioctl.h"
|
||||
#include "winternl.h"
|
||||
#include "unix_private.h"
|
||||
@@ -359,7 +357,7 @@ index dfc0d4c9a09..310556948aa 100644
|
||||
#include "wine/list.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
@@ -2190,6 +2191,7 @@ static void start_main_thread(void)
|
||||
@@ -2081,6 +2082,7 @@ static void start_main_thread(void)
|
||||
signal_init_thread( teb );
|
||||
dbg_init();
|
||||
startup_info_size = server_init_process();
|
||||
@@ -368,10 +366,10 @@ index dfc0d4c9a09..310556948aa 100644
|
||||
init_cpu_info();
|
||||
init_files();
|
||||
diff --git a/dlls/ntdll/unix/server.c b/dlls/ntdll/unix/server.c
|
||||
index 53d34e1858a..43b470fc10a 100644
|
||||
index a388247beb2..79b83589d81 100644
|
||||
--- a/dlls/ntdll/unix/server.c
|
||||
+++ b/dlls/ntdll/unix/server.c
|
||||
@@ -114,7 +114,7 @@ timeout_t server_start_time = 0; /* time of server startup */
|
||||
@@ -104,7 +104,7 @@ timeout_t server_start_time = 0; /* time of server startup */
|
||||
sigset_t server_block_set; /* signals to block during server calls */
|
||||
static int fd_socket = -1; /* socket to exchange file descriptors with the server */
|
||||
static pid_t server_pid;
|
||||
@@ -380,7 +378,7 @@ index 53d34e1858a..43b470fc10a 100644
|
||||
|
||||
/* atomically exchange a 64-bit value */
|
||||
static inline LONG64 interlocked_xchg64( LONG64 *dest, LONG64 val )
|
||||
@@ -828,7 +828,7 @@ void wine_server_send_fd( int fd )
|
||||
@@ -801,7 +801,7 @@ void wine_server_send_fd( int fd )
|
||||
*
|
||||
* Receive a file descriptor passed from the server.
|
||||
*/
|
||||
@@ -390,10 +388,10 @@ index 53d34e1858a..43b470fc10a 100644
|
||||
struct iovec vec;
|
||||
struct msghdr msghdr;
|
||||
diff --git a/dlls/ntdll/unix/sync.c b/dlls/ntdll/unix/sync.c
|
||||
index 86a836a908f..871fe7fb42e 100644
|
||||
index 442243d8bcf..72cbf92f93c 100644
|
||||
--- a/dlls/ntdll/unix/sync.c
|
||||
+++ b/dlls/ntdll/unix/sync.c
|
||||
@@ -71,6 +71,7 @@
|
||||
@@ -64,6 +64,7 @@
|
||||
#include "wine/server.h"
|
||||
#include "wine/debug.h"
|
||||
#include "unix_private.h"
|
||||
@@ -401,7 +399,7 @@ index 86a836a908f..871fe7fb42e 100644
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(sync);
|
||||
|
||||
@@ -324,6 +325,9 @@ NTSTATUS WINAPI NtCreateSemaphore( HANDLE *handle, ACCESS_MASK access, const OBJ
|
||||
@@ -262,6 +263,9 @@ NTSTATUS WINAPI NtCreateSemaphore( HANDLE *handle, ACCESS_MASK access, const OBJ
|
||||
if (max <= 0 || initial < 0 || initial > max) return STATUS_INVALID_PARAMETER;
|
||||
if ((ret = alloc_object_attributes( attr, &objattr, &len ))) return ret;
|
||||
|
||||
@@ -412,10 +410,10 @@ index 86a836a908f..871fe7fb42e 100644
|
||||
{
|
||||
req->access = access;
|
||||
diff --git a/server/esync.c b/server/esync.c
|
||||
index a571855c70a..e41bbbf9349 100644
|
||||
index b9dbfa322bc..99e57eca44c 100644
|
||||
--- a/server/esync.c
|
||||
+++ b/server/esync.c
|
||||
@@ -43,6 +43,7 @@
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "handle.h"
|
||||
#include "request.h"
|
||||
#include "file.h"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From e5a3456cde339352e78b10fed8a2fc65ca560041 Mon Sep 17 00:00:00 2001
|
||||
From 4c255f91363e09892de43bf5f3b991ef5ccce3b2 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 12:16:34 -0500
|
||||
Subject: [PATCH] ntdll: Implement NtReleaseSemaphore().
|
||||
@@ -10,7 +10,7 @@ Subject: [PATCH] ntdll: Implement NtReleaseSemaphore().
|
||||
3 files changed, 47 insertions(+)
|
||||
|
||||
diff --git a/dlls/ntdll/unix/esync.c b/dlls/ntdll/unix/esync.c
|
||||
index 7c409c7a9ca..8f28a36d93f 100644
|
||||
index 9e1ef7d8afd..c7320d78bd3 100644
|
||||
--- a/dlls/ntdll/unix/esync.c
|
||||
+++ b/dlls/ntdll/unix/esync.c
|
||||
@@ -28,6 +28,7 @@
|
||||
@@ -19,9 +19,9 @@ index 7c409c7a9ca..8f28a36d93f 100644
|
||||
#include <stdarg.h>
|
||||
+#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#ifdef HAVE_SYS_MMAN_H
|
||||
# include <sys/mman.h>
|
||||
@@ -173,6 +174,16 @@ static struct esync *add_to_list( HANDLE handle, enum esync_type type, int fd, v
|
||||
#include <sys/mman.h>
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
@@ -171,6 +172,16 @@ static struct esync *add_to_list( HANDLE handle, enum esync_type type, int fd, v
|
||||
return &esync_list[entry][idx];
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ index 7c409c7a9ca..8f28a36d93f 100644
|
||||
static NTSTATUS create_esync( enum esync_type type, HANDLE *handle, ACCESS_MASK access,
|
||||
const OBJECT_ATTRIBUTES *attr, int initval, int max )
|
||||
{
|
||||
@@ -228,6 +239,38 @@ extern NTSTATUS esync_create_semaphore(HANDLE *handle, ACCESS_MASK access,
|
||||
@@ -226,6 +237,38 @@ extern NTSTATUS esync_create_semaphore(HANDLE *handle, ACCESS_MASK access,
|
||||
return create_esync( ESYNC_SEMAPHORE, handle, access, attr, initial, max );
|
||||
}
|
||||
|
||||
@@ -90,10 +90,10 @@ index a50a755149a..09838e95535 100644
|
||||
|
||||
/* We have to synchronize on the fd cache mutex so that our calls to receive_fd
|
||||
diff --git a/dlls/ntdll/unix/sync.c b/dlls/ntdll/unix/sync.c
|
||||
index 663a170fc61..f4bcda4b473 100644
|
||||
index 72cbf92f93c..db992f3a9ad 100644
|
||||
--- a/dlls/ntdll/unix/sync.c
|
||||
+++ b/dlls/ntdll/unix/sync.c
|
||||
@@ -407,6 +407,9 @@ NTSTATUS WINAPI NtReleaseSemaphore( HANDLE handle, ULONG count, ULONG *previous
|
||||
@@ -348,6 +348,9 @@ NTSTATUS WINAPI NtReleaseSemaphore( HANDLE handle, ULONG count, ULONG *previous
|
||||
{
|
||||
NTSTATUS ret;
|
||||
|
||||
@@ -104,5 +104,5 @@ index 663a170fc61..f4bcda4b473 100644
|
||||
{
|
||||
req->handle = wine_server_obj_handle( handle );
|
||||
--
|
||||
2.28.0
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 908363daafc3b5220967d31e2e878f617d465026 Mon Sep 17 00:00:00 2001
|
||||
From e6666b78dbd54b0017de39c85f06900503780110 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 12:34:42 -0500
|
||||
Subject: [PATCH] ntdll: Implement NtWaitForMultipleObjects().
|
||||
@@ -10,10 +10,10 @@ Subject: [PATCH] ntdll: Implement NtWaitForMultipleObjects().
|
||||
3 files changed, 180 insertions(+)
|
||||
|
||||
diff --git a/dlls/ntdll/unix/esync.c b/dlls/ntdll/unix/esync.c
|
||||
index 02b07bf36be..1b71105491c 100644
|
||||
index f111342688e..dac49af3083 100644
|
||||
--- a/dlls/ntdll/unix/esync.c
|
||||
+++ b/dlls/ntdll/unix/esync.c
|
||||
@@ -22,17 +22,25 @@
|
||||
@@ -22,6 +22,8 @@
|
||||
#pragma makedep unix
|
||||
#endif
|
||||
|
||||
@@ -22,24 +22,20 @@ index 02b07bf36be..1b71105491c 100644
|
||||
#include "config.h"
|
||||
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
+#ifdef HAVE_POLL_H
|
||||
+#include <poll.h>
|
||||
+#endif
|
||||
#include <stdarg.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#ifdef HAVE_SYS_MMAN_H
|
||||
# include <sys/mman.h>
|
||||
#endif
|
||||
+#ifdef HAVE_SYS_POLL_H
|
||||
+# include <sys/poll.h>
|
||||
+#endif
|
||||
@@ -34,6 +36,12 @@
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
# include <sys/stat.h>
|
||||
#endif
|
||||
@@ -289,6 +297,168 @@ NTSTATUS esync_release_semaphore( HANDLE handle, ULONG count, ULONG *prev )
|
||||
+#ifdef HAVE_POLL_H
|
||||
+#include <poll.h>
|
||||
+#endif
|
||||
+#ifdef HAVE_SYS_POLL_H
|
||||
+# include <sys/poll.h>
|
||||
+#endif
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -287,6 +295,168 @@ NTSTATUS esync_release_semaphore( HANDLE handle, ULONG count, ULONG *prev )
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -223,10 +219,10 @@ index 14e52416764..87516e7597a 100644
|
||||
/* We have to synchronize on the fd cache mutex so that our calls to receive_fd
|
||||
* don't race with theirs. It looks weird, I know.
|
||||
diff --git a/dlls/ntdll/unix/sync.c b/dlls/ntdll/unix/sync.c
|
||||
index f4bcda4b473..445c2a4324d 100644
|
||||
index db992f3a9ad..bc643558a28 100644
|
||||
--- a/dlls/ntdll/unix/sync.c
|
||||
+++ b/dlls/ntdll/unix/sync.c
|
||||
@@ -1273,6 +1273,13 @@ NTSTATUS WINAPI NtWaitForMultipleObjects( DWORD count, const HANDLE *handles, BO
|
||||
@@ -1410,6 +1410,13 @@ NTSTATUS WINAPI NtWaitForMultipleObjects( DWORD count, const HANDLE *handles, BO
|
||||
|
||||
if (!count || count > MAXIMUM_WAIT_OBJECTS) return STATUS_INVALID_PARAMETER_1;
|
||||
|
||||
@@ -241,5 +237,5 @@ index f4bcda4b473..445c2a4324d 100644
|
||||
select_op.wait.op = wait_any ? SELECT_WAIT : SELECT_WAIT_ALL;
|
||||
for (i = 0; i < count; i++) select_op.wait.handles[i] = wine_server_obj_handle( handles[i] );
|
||||
--
|
||||
2.28.0
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,28 +1,30 @@
|
||||
From 153efcdc01d57fc29c6d1e80eda52f43666b34a6 Mon Sep 17 00:00:00 2001
|
||||
From 4a9eff3f22bfe2c6463e3064ec862617d5dd07d7 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 | 26 ++++++++++++++++++--------
|
||||
1 file changed, 18 insertions(+), 8 deletions(-)
|
||||
dlls/ntdll/unix/esync.c | 27 +++++++++++++++++----------
|
||||
1 file changed, 17 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/unix/esync.c b/dlls/ntdll/unix/esync.c
|
||||
index 97d468b2449..d58cb6c1ee2 100644
|
||||
index 80eb3773ee4..f4c27796189 100644
|
||||
--- a/dlls/ntdll/unix/esync.c
|
||||
+++ b/dlls/ntdll/unix/esync.c
|
||||
@@ -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>
|
||||
@@ -36,12 +36,7 @@
|
||||
#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
|
||||
-#ifdef HAVE_POLL_H
|
||||
#include <poll.h>
|
||||
-#endif
|
||||
-#ifdef HAVE_SYS_POLL_H
|
||||
-# include <sys/poll.h>
|
||||
-#endif
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -481,12 +476,24 @@ NTSTATUS esync_wait_objects( DWORD count, const HANDLE *handles, BOOLEAN wait_an
|
||||
int64_t value;
|
||||
ssize_t size;
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,17 +1,17 @@
|
||||
From fb450637e3b533b3dbef8792aa389ca3614bedf3 Mon Sep 17 00:00:00 2001
|
||||
From fa9bbbaa8630c4b259e287437a627e226c1c34da Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Sat, 17 Oct 2020 19:13:16 -0500
|
||||
Subject: [PATCH] server: Create esync file descriptors for console servers.
|
||||
|
||||
---
|
||||
server/console.c | 22 +++++++++++++++++++++-
|
||||
1 file changed, 21 insertions(+), 1 deletion(-)
|
||||
server/console.c | 36 ++++++++++++++++++++++++++++--------
|
||||
1 file changed, 28 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/server/console.c b/server/console.c
|
||||
index dd1bf8f4119..887bba4e63c 100644
|
||||
index e7c97e99579..98ac09efc3f 100644
|
||||
--- a/server/console.c
|
||||
+++ b/server/console.c
|
||||
@@ -42,6 +42,7 @@
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "wincon.h"
|
||||
#include "winternl.h"
|
||||
#include "wine/condrv.h"
|
||||
@@ -19,10 +19,26 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
|
||||
struct screen_buffer;
|
||||
|
||||
@@ -139,11 +140,13 @@ struct console_server
|
||||
int busy; /* flag if server processing an ioctl */
|
||||
int term_fd; /* UNIX terminal fd */
|
||||
struct termios termios; /* original termios */
|
||||
@@ -131,20 +132,22 @@ struct console_host_ioctl
|
||||
|
||||
struct console_server
|
||||
{
|
||||
- struct object obj; /* object header */
|
||||
- struct fd *fd; /* pseudo-fd for ioctls */
|
||||
- struct console *console; /* attached console */
|
||||
- struct list queue; /* ioctl queue */
|
||||
- struct list read_queue; /* blocking read queue */
|
||||
+ struct object obj; /* object header */
|
||||
+ struct fd *fd; /* pseudo-fd for ioctls */
|
||||
+ struct console *console; /* attached console */
|
||||
+ struct list queue; /* ioctl queue */
|
||||
+ struct list read_queue; /* blocking read queue */
|
||||
unsigned int busy : 1; /* flag if server processing an ioctl */
|
||||
unsigned int once_input : 1; /* flag if input thread has already been requested */
|
||||
- int term_fd; /* UNIX terminal fd */
|
||||
- struct termios termios; /* original termios */
|
||||
+ int term_fd; /* UNIX terminal fd */
|
||||
+ struct termios termios; /* original termios */
|
||||
+ int esync_fd;
|
||||
};
|
||||
|
||||
@@ -33,7 +49,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
static struct fd *console_server_get_fd( struct object *obj );
|
||||
static struct object *console_server_lookup_name( struct object *obj, struct unicode_str *name,
|
||||
unsigned int attr, struct object *root );
|
||||
@@ -158,7 +161,7 @@ static const struct object_ops console_server_ops =
|
||||
@@ -159,7 +162,7 @@ static const struct object_ops console_server_ops =
|
||||
add_queue, /* add_queue */
|
||||
remove_queue, /* remove_queue */
|
||||
console_server_signaled, /* signaled */
|
||||
@@ -42,7 +58,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
no_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
console_server_get_fd, /* get_fd */
|
||||
@@ -526,6 +529,8 @@ static void disconnect_console_server( struct console_server *server )
|
||||
@@ -597,6 +600,8 @@ static void disconnect_console_server( struct console_server *server )
|
||||
list_remove( &call->entry );
|
||||
console_host_ioctl_terminate( call, STATUS_CANCELLED );
|
||||
}
|
||||
@@ -51,7 +67,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
while (!list_empty( &server->read_queue ))
|
||||
{
|
||||
struct console_host_ioctl *call = LIST_ENTRY( list_head( &server->read_queue ), struct console_host_ioctl, entry );
|
||||
@@ -844,6 +849,13 @@ static int console_server_signaled( struct object *obj, struct wait_queue_entry
|
||||
@@ -897,6 +902,13 @@ static int console_server_signaled( struct object *obj, struct wait_queue_entry
|
||||
return !server->console || !list_empty( &server->queue );
|
||||
}
|
||||
|
||||
@@ -65,7 +81,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
static struct fd *console_server_get_fd( struct object* obj )
|
||||
{
|
||||
struct console_server *server = (struct console_server*)obj;
|
||||
@@ -874,6 +886,10 @@ static struct object *create_console_server( void )
|
||||
@@ -928,6 +940,10 @@ static struct object *create_console_server( void )
|
||||
return NULL;
|
||||
}
|
||||
allow_fd_caching(server->fd);
|
||||
@@ -76,7 +92,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
|
||||
return &server->obj;
|
||||
}
|
||||
@@ -1388,6 +1404,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
@@ -1513,6 +1529,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
/* set result of previous ioctl */
|
||||
ioctl = LIST_ENTRY( list_head( &server->queue ), struct console_host_ioctl, entry );
|
||||
list_remove( &ioctl->entry );
|
||||
@@ -85,7 +101,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
}
|
||||
|
||||
if (ioctl)
|
||||
@@ -1486,6 +1504,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
@@ -1598,6 +1616,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
{
|
||||
set_error( STATUS_PENDING );
|
||||
}
|
||||
@@ -95,5 +111,5 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
release_object( server );
|
||||
}
|
||||
--
|
||||
2.29.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From e5140396b7787d48d39f0b47876022c64fc1c2c7 Mon Sep 17 00:00:00 2001
|
||||
From 96bd1ab47a39d621c5f63264fb4bc415164d371c Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Maurer <dark.shadow4@web.de>
|
||||
Date: Fri, 10 Apr 2020 18:47:18 +0200
|
||||
Subject: [PATCH] kernelbase: Implement sortkey generation on official tables
|
||||
@@ -10,10 +10,10 @@ Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
|
||||
2 files changed, 413 insertions(+), 123 deletions(-)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
|
||||
index c65c2cce3f2..a5d88288f27 100644
|
||||
index 94c9ce3ad1b..8447e67486c 100644
|
||||
--- a/dlls/kernel32/tests/locale.c
|
||||
+++ b/dlls/kernel32/tests/locale.c
|
||||
@@ -2697,6 +2697,13 @@ static void test_lcmapstring_unicode(lcmapstring_wrapper func_ptr, const char *f
|
||||
@@ -2560,6 +2560,13 @@ static void test_lcmapstring_unicode(lcmapstring_wrapper func_ptr, const char *f
|
||||
lstrlenW(symbols_stripped) + 1, ret);
|
||||
ok(!lstrcmpW(buf, symbols_stripped), "%s string comparison mismatch\n", func_name);
|
||||
|
||||
@@ -27,7 +27,7 @@ index c65c2cce3f2..a5d88288f27 100644
|
||||
/* test srclen = 0 */
|
||||
SetLastError(0xdeadbeef);
|
||||
ret = func_ptr(0, upper_case, 0, buf, ARRAY_SIZE(buf));
|
||||
@@ -3126,6 +3133,135 @@ static void test_sorting(void)
|
||||
@@ -2989,6 +2996,135 @@ static void test_sorting(void)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -163,14 +163,16 @@ index c65c2cce3f2..a5d88288f27 100644
|
||||
static void test_FoldStringA(void)
|
||||
{
|
||||
int ret, i, j;
|
||||
@@ -7191,4 +7327,5 @@ START_TEST(locale)
|
||||
@@ -7201,6 +7337,7 @@ START_TEST(locale)
|
||||
test_NLSVersion();
|
||||
test_geo_name();
|
||||
test_sorting();
|
||||
+ test_unicode_sorting();
|
||||
}
|
||||
test_EnumCalendarInfoA();
|
||||
test_EnumCalendarInfoW();
|
||||
test_EnumCalendarInfoExA();
|
||||
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c
|
||||
index 89b35775053..5da87e065f1 100644
|
||||
index 667d1a4dc65..095e0a68558 100644
|
||||
--- a/dlls/kernelbase/locale.c
|
||||
+++ b/dlls/kernelbase/locale.c
|
||||
@@ -2164,127 +2164,6 @@ static int wcstombs_codepage( UINT codepage, DWORD flags, const WCHAR *src, int
|
||||
@@ -582,7 +584,7 @@ index 89b35775053..5da87e065f1 100644
|
||||
|
||||
static const struct geoinfo *get_geoinfo_ptr( GEOID geoid )
|
||||
{
|
||||
@@ -5303,8 +5456,8 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
|
||||
@@ -5302,8 +5455,8 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
|
||||
TRACE( "(%s,0x%08x,%s,%d,%p,%d)\n",
|
||||
debugstr_w(locale), flags, debugstr_wn(src, srclen), srclen, dst, dstlen );
|
||||
|
||||
@@ -594,5 +596,5 @@ index 89b35775053..5da87e065f1 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.30.2
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 8db4007bfa0d09e3d75d00a48b7762e9ec746357 Mon Sep 17 00:00:00 2001
|
||||
From fb1dbda120ff9777832d125ad31fee292fdd2123 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Tue, 9 Jul 2019 14:13:28 +1000
|
||||
Subject: [PATCH] user32: Do not enumerate the registry in
|
||||
@@ -8,15 +8,15 @@ This function returns the current list of *installed* Keyboard layouts
|
||||
not the complete list from the registry.
|
||||
---
|
||||
dlls/user32/input.c | 1 -
|
||||
dlls/user32/tests/input.c | 35 +++++++++++++++++++++++++++++++
|
||||
dlls/win32u/input.c | 43 +--------------------------------------
|
||||
3 files changed, 36 insertions(+), 43 deletions(-)
|
||||
dlls/user32/tests/input.c | 35 +++++++++++++++++++++++++++++++++++
|
||||
dlls/win32u/input.c | 33 +--------------------------------
|
||||
3 files changed, 36 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/dlls/user32/input.c b/dlls/user32/input.c
|
||||
index 7349d865f01..23ef817ff29 100644
|
||||
index 08a00c0e647..ae496e5d703 100644
|
||||
--- a/dlls/user32/input.c
|
||||
+++ b/dlls/user32/input.c
|
||||
@@ -883,7 +883,6 @@ BOOL WINAPI BlockInput(BOOL fBlockIt)
|
||||
@@ -809,7 +809,6 @@ BOOL WINAPI BlockInput(BOOL fBlockIt)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -78,10 +78,10 @@ index 79f3dfc3dc0..b3c1bd560ae 100644
|
||||
if(pGetMouseMovePointsEx)
|
||||
test_GetMouseMovePointsEx(argv[0]);
|
||||
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
|
||||
index bc3cd17a29e..4ae1b0c900f 100644
|
||||
index 90a77639d1a..1fe2fb88911 100644
|
||||
--- a/dlls/win32u/input.c
|
||||
+++ b/dlls/win32u/input.c
|
||||
@@ -611,23 +611,9 @@ HKL WINAPI NtUserActivateKeyboardLayout( HKL layout, UINT flags )
|
||||
@@ -621,11 +621,7 @@ HKL WINAPI NtUserActivateKeyboardLayout( HKL layout, UINT flags )
|
||||
*/
|
||||
UINT WINAPI NtUserGetKeyboardLayoutList( INT size, HKL *layouts )
|
||||
{
|
||||
@@ -93,20 +93,8 @@ index bc3cd17a29e..4ae1b0c900f 100644
|
||||
+ DWORD count;
|
||||
HKL layout;
|
||||
|
||||
- static const WCHAR keyboard_layouts_keyW[] =
|
||||
- {
|
||||
- '\\','R','e','g','i','s','t','r','y',
|
||||
- '\\','M','a','c','h','i','n','e',
|
||||
- '\\','S','y','s','t','e','m',
|
||||
- '\\','C','u','r','r','e','n','t','C','o','n','t','r','o','l','S','e','t',
|
||||
- '\\','C','o','n','t','r','o','l',
|
||||
- '\\','K','e','y','b','o','a','r','d',' ','L','a','y','o','u','t','s'
|
||||
- };
|
||||
-
|
||||
TRACE_(keyboard)( "size %d, layouts %p.\n", size, layouts );
|
||||
|
||||
if ((count = user_driver->pGetKeyboardLayoutList( size, layouts )) != ~0) return count;
|
||||
@@ -639,33 +625,6 @@ UINT WINAPI NtUserGetKeyboardLayoutList( INT size, HKL *layouts )
|
||||
@@ -639,33 +635,6 @@ UINT WINAPI NtUserGetKeyboardLayoutList( INT size, HKL *layouts )
|
||||
if (size && layouts)
|
||||
{
|
||||
layouts[count - 1] = layout;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 0a08aa6899527ecb02171b95e777d0549489fe3f Mon Sep 17 00:00:00 2001
|
||||
From e6e95fe8edfaa85796f533f3f7a485bc721fe930 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Mon, 30 Mar 2015 04:01:51 +0200
|
||||
Subject: [PATCH] mountmgr.sys: Write usable device paths into
|
||||
@@ -15,10 +15,10 @@ Based on a patch by Bernhard Ăśbelacker.
|
||||
3 files changed, 13 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/mountmgr.sys/device.c b/dlls/mountmgr.sys/device.c
|
||||
index c8e7d6bf088..426187a4512 100644
|
||||
index fc32b57cf70..4d837315311 100644
|
||||
--- a/dlls/mountmgr.sys/device.c
|
||||
+++ b/dlls/mountmgr.sys/device.c
|
||||
@@ -1205,8 +1205,8 @@ static NTSTATUS set_volume_info( struct volume *volume, struct dos_drive *drive,
|
||||
@@ -1083,8 +1083,8 @@ static NTSTATUS set_volume_info( struct volume *volume, struct dos_drive *drive,
|
||||
id = disk_device->unix_mount;
|
||||
id_len = strlen( disk_device->unix_mount ) + 1;
|
||||
}
|
||||
@@ -30,12 +30,12 @@ index c8e7d6bf088..426187a4512 100644
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
diff --git a/dlls/mountmgr.sys/mountmgr.c b/dlls/mountmgr.sys/mountmgr.c
|
||||
index 50be9eb740f..6667d214560 100644
|
||||
index 2e3ff80c36a..6898bb98c62 100644
|
||||
--- a/dlls/mountmgr.sys/mountmgr.c
|
||||
+++ b/dlls/mountmgr.sys/mountmgr.c
|
||||
@@ -55,14 +55,21 @@ struct mount_point
|
||||
static struct list mount_points_list = LIST_INIT(mount_points_list);
|
||||
static HKEY mount_key;
|
||||
@@ -52,14 +52,21 @@ static HKEY mount_key;
|
||||
|
||||
unixlib_handle_t mountmgr_handle = 0;
|
||||
|
||||
-void set_mount_point_id( struct mount_point *mount, const void *id, unsigned int id_len )
|
||||
+void set_mount_point_id( struct mount_point *mount, const void *id, unsigned int id_len, int drive )
|
||||
@@ -58,10 +58,10 @@ index 50be9eb740f..6667d214560 100644
|
||||
else mount->id_len = 0;
|
||||
}
|
||||
diff --git a/dlls/mountmgr.sys/mountmgr.h b/dlls/mountmgr.sys/mountmgr.h
|
||||
index 85c58062275..3454b1a8c73 100644
|
||||
index 0297f6f11fe..b347a9cef6a 100644
|
||||
--- a/dlls/mountmgr.sys/mountmgr.h
|
||||
+++ b/dlls/mountmgr.sys/mountmgr.h
|
||||
@@ -106,7 +106,8 @@ extern struct mount_point *add_dosdev_mount_point( DEVICE_OBJECT *device, UNICOD
|
||||
@@ -110,6 +110,7 @@ extern struct mount_point *add_dosdev_mount_point( DEVICE_OBJECT *device, UNICOD
|
||||
extern struct mount_point *add_volume_mount_point( DEVICE_OBJECT *device, UNICODE_STRING *device_name,
|
||||
const GUID *guid ) DECLSPEC_HIDDEN;
|
||||
extern void delete_mount_point( struct mount_point *mount ) DECLSPEC_HIDDEN;
|
||||
@@ -69,8 +69,7 @@ index 85c58062275..3454b1a8c73 100644
|
||||
+
|
||||
+extern void set_mount_point_id( struct mount_point *mount, const void *id, unsigned int id_len, int drive ) DECLSPEC_HIDDEN;
|
||||
|
||||
extern ULONG get_dhcp_request_param( const NET_LUID *adapter, struct mountmgr_dhcp_request_param *param, char *buf,
|
||||
ULONG offset, ULONG size ) DECLSPEC_HIDDEN;
|
||||
#endif /* __WINE_MOUNTMGR_H */
|
||||
--
|
||||
2.30.2
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 88941e9247f9311f978c60c98f93a149aa9bf0e2 Mon Sep 17 00:00:00 2001
|
||||
From 11107a30f5ddc2065d2b254fad2d10bc158a1ebb Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Tue, 19 Aug 2014 22:10:49 -0600
|
||||
Subject: [PATCH] ntdll: Implement retrieving DOS attributes in
|
||||
@@ -10,10 +10,10 @@ Subject: [PATCH] ntdll: Implement retrieving DOS attributes in
|
||||
2 files changed, 50 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f0762e107f3..714af889bc6 100644
|
||||
index d621ae6e712..3ddff238d74 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -90,6 +90,7 @@ AC_ARG_WITH(usb, AS_HELP_STRING([--without-usb],[do not use the libusb lib
|
||||
@@ -65,6 +65,7 @@ AC_ARG_WITH(usb, AS_HELP_STRING([--without-usb],[do not use the libusb lib
|
||||
AC_ARG_WITH(v4l2, AS_HELP_STRING([--without-v4l2],[do not use v4l2 (video capture)]))
|
||||
AC_ARG_WITH(vkd3d, AS_HELP_STRING([--without-vkd3d],[do not use vkd3d (Direct3D 12 support)]))
|
||||
AC_ARG_WITH(vulkan, AS_HELP_STRING([--without-vulkan],[do not use Vulkan]))
|
||||
@@ -21,8 +21,8 @@ index f0762e107f3..714af889bc6 100644
|
||||
AC_ARG_WITH(xcomposite,AS_HELP_STRING([--without-xcomposite],[do not use the Xcomposite extension]),
|
||||
[if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xcomposite_h=no; fi])
|
||||
AC_ARG_WITH(xcursor, AS_HELP_STRING([--without-xcursor],[do not use the Xcursor extension]),
|
||||
@@ -697,6 +698,17 @@ AC_CHECK_HEADERS([libprocstat.h],,,
|
||||
#include <sys/socket.h>
|
||||
@@ -642,6 +643,17 @@ AC_CHECK_HEADERS([libprocstat.h],,,
|
||||
#include <sys/queue.h>
|
||||
#endif])
|
||||
|
||||
+if test "x$with_xattr" != "xno"
|
||||
@@ -40,10 +40,10 @@ index f0762e107f3..714af889bc6 100644
|
||||
|
||||
AC_SUBST(DLLFLAGS,"")
|
||||
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
|
||||
index e6f813966a5..9addefe92f4 100644
|
||||
index e459087af76..0b6e5d3b6a7 100644
|
||||
--- a/dlls/ntdll/unix/file.c
|
||||
+++ b/dlls/ntdll/unix/file.c
|
||||
@@ -108,6 +108,9 @@
|
||||
@@ -98,6 +98,9 @@
|
||||
#ifdef HAVE_SYS_STATFS_H
|
||||
#include <sys/statfs.h>
|
||||
#endif
|
||||
@@ -51,9 +51,9 @@ index e6f813966a5..9addefe92f4 100644
|
||||
+#include <attr/xattr.h>
|
||||
+#endif
|
||||
#include <time.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
# include <unistd.h>
|
||||
@@ -367,6 +370,20 @@ NTSTATUS errno_to_status( int err )
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -355,6 +358,20 @@ NTSTATUS errno_to_status( int err )
|
||||
}
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@ index e6f813966a5..9addefe92f4 100644
|
||||
/* get space from the current directory data buffer, allocating a new one if necessary */
|
||||
static void *get_dir_data_space( struct dir_data *data, unsigned int size )
|
||||
{
|
||||
@@ -1448,6 +1465,22 @@ static BOOL append_entry( struct dir_data *data, const char *long_name,
|
||||
@@ -1436,6 +1453,22 @@ static BOOL append_entry( struct dir_data *data, const char *long_name,
|
||||
}
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ index e6f813966a5..9addefe92f4 100644
|
||||
/* fetch the attributes of a file */
|
||||
static inline ULONG get_file_attributes( const struct stat *st )
|
||||
{
|
||||
@@ -1491,7 +1524,8 @@ static int fd_get_file_info( int fd, unsigned int options, struct stat *st, ULON
|
||||
@@ -1479,7 +1512,8 @@ static int fd_get_file_info( int fd, unsigned int options, struct stat *st, ULON
|
||||
static int get_file_info( const char *path, struct stat *st, ULONG *attr )
|
||||
{
|
||||
char *parent_path;
|
||||
@@ -107,7 +107,7 @@ index e6f813966a5..9addefe92f4 100644
|
||||
|
||||
*attr = 0;
|
||||
ret = lstat( path, st );
|
||||
@@ -1517,6 +1551,9 @@ static int get_file_info( const char *path, struct stat *st, ULONG *attr )
|
||||
@@ -1505,6 +1539,9 @@ static int get_file_info( const char *path, struct stat *st, ULONG *attr )
|
||||
free( parent_path );
|
||||
}
|
||||
*attr |= get_file_attributes( st );
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 65442c83060ee1980900cc5fe38978ef8c29eba4 Mon Sep 17 00:00:00 2001
|
||||
From c93462e9ca4529f413b82abaa76b593df9947cc6 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Mon, 6 Oct 2014 14:21:11 -0600
|
||||
Subject: [PATCH] libport: Add support for Mac OS X style extended attributes.
|
||||
@@ -9,10 +9,10 @@ Subject: [PATCH] libport: Add support for Mac OS X style extended attributes.
|
||||
2 files changed, 21 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index cca97ee403b..5e33bfacf91 100644
|
||||
index 3ddff238d74..57f76f09b96 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -702,6 +702,9 @@ AC_CHECK_HEADERS([libprocstat.h],,,
|
||||
@@ -646,6 +646,9 @@ AC_CHECK_HEADERS([libprocstat.h],,,
|
||||
if test "x$with_xattr" != "xno"
|
||||
then
|
||||
AC_CHECK_HEADERS(attr/xattr.h, [HAVE_XATTR=1])
|
||||
@@ -23,10 +23,10 @@ index cca97ee403b..5e33bfacf91 100644
|
||||
if test "x$with_xattr" = "xyes"
|
||||
then
|
||||
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
|
||||
index a72d95f8378..5e0ac914e1c 100644
|
||||
index 6f33d2c748f..d4cb708336c 100644
|
||||
--- a/dlls/ntdll/unix/file.c
|
||||
+++ b/dlls/ntdll/unix/file.c
|
||||
@@ -106,7 +106,10 @@
|
||||
@@ -99,7 +99,10 @@
|
||||
#include <sys/statfs.h>
|
||||
#endif
|
||||
#ifdef HAVE_ATTR_XATTR_H
|
||||
@@ -36,8 +36,8 @@ index a72d95f8378..5e0ac914e1c 100644
|
||||
+#include <sys/xattr.h>
|
||||
#endif
|
||||
#include <time.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
@@ -378,7 +381,9 @@ NTSTATUS errno_to_status( int err )
|
||||
#include <unistd.h>
|
||||
@@ -364,7 +367,9 @@ NTSTATUS errno_to_status( int err )
|
||||
|
||||
static int xattr_fremove( int filedes, const char *name )
|
||||
{
|
||||
@@ -48,7 +48,7 @@ index a72d95f8378..5e0ac914e1c 100644
|
||||
return fremovexattr( filedes, name );
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
@@ -388,7 +393,9 @@ static int xattr_fremove( int filedes, const char *name )
|
||||
@@ -374,7 +379,9 @@ static int xattr_fremove( int filedes, const char *name )
|
||||
|
||||
static int xattr_fset( int filedes, const char *name, void *value, size_t size )
|
||||
{
|
||||
@@ -59,7 +59,7 @@ index a72d95f8378..5e0ac914e1c 100644
|
||||
return fsetxattr( filedes, name, value, size, 0 );
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
@@ -398,7 +405,9 @@ static int xattr_fset( int filedes, const char *name, void *value, size_t size )
|
||||
@@ -384,7 +391,9 @@ static int xattr_fset( int filedes, const char *name, void *value, size_t size )
|
||||
|
||||
static int xattr_get( const char *path, const char *name, void *value, size_t size )
|
||||
{
|
||||
@@ -70,7 +70,7 @@ index a72d95f8378..5e0ac914e1c 100644
|
||||
return getxattr( path, name, value, size );
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
@@ -408,7 +417,9 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si
|
||||
@@ -394,7 +403,9 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si
|
||||
|
||||
static int xattr_remove( const char *path, const char *name )
|
||||
{
|
||||
@@ -81,7 +81,7 @@ index a72d95f8378..5e0ac914e1c 100644
|
||||
return removexattr( path, name );
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
@@ -418,7 +429,9 @@ static int xattr_remove( const char *path, const char *name )
|
||||
@@ -404,7 +415,9 @@ static int xattr_remove( const char *path, const char *name )
|
||||
|
||||
static int xattr_set( const char *path, const char *name, void *value, size_t size )
|
||||
{
|
||||
@@ -93,5 +93,5 @@ index a72d95f8378..5e0ac914e1c 100644
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
--
|
||||
2.28.0
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From e7dacaafcbdef04a9cabfdb645497f89d19ca781 Mon Sep 17 00:00:00 2001
|
||||
From 691c8c2dfe1c14d968cf91f2356d4fca0611d579 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Mon, 6 Oct 2014 14:26:24 -0600
|
||||
Subject: [PATCH] ntdll: Add support for FreeBSD style extended attributes.
|
||||
@@ -9,10 +9,10 @@ Subject: [PATCH] ntdll: Add support for FreeBSD style extended attributes.
|
||||
2 files changed, 38 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f964230858e..a37b314a063 100644
|
||||
index 57f76f09b96..b99be0623b9 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -689,7 +689,7 @@ AC_CHECK_HEADERS([libprocstat.h],,,
|
||||
@@ -645,7 +645,7 @@ AC_CHECK_HEADERS([libprocstat.h],,,
|
||||
|
||||
if test "x$with_xattr" != "xno"
|
||||
then
|
||||
@@ -22,10 +22,10 @@ index f964230858e..a37b314a063 100644
|
||||
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/xattr.h>]], [[getxattr("", "", "", 0, 0, 0);]])],
|
||||
[AC_DEFINE(XATTR_ADDITIONAL_OPTIONS, 1, [Define if xattr functions take additional arguments (Mac OS X)])])])
|
||||
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
|
||||
index 301241e2edd..4ccc74c300a 100644
|
||||
index d4cb708336c..63fff5f7697 100644
|
||||
--- a/dlls/ntdll/unix/file.c
|
||||
+++ b/dlls/ntdll/unix/file.c
|
||||
@@ -114,6 +114,10 @@
|
||||
@@ -104,6 +104,10 @@
|
||||
#elif defined(HAVE_SYS_XATTR_H)
|
||||
#include <sys/xattr.h>
|
||||
#endif
|
||||
@@ -34,9 +34,9 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
+#include <sys/extattr.h>
|
||||
+#endif
|
||||
#include <time.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
# include <unistd.h>
|
||||
@@ -381,6 +385,21 @@ NTSTATUS errno_to_status( int err )
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -364,6 +368,21 @@ NTSTATUS errno_to_status( int err )
|
||||
#ifndef XATTR_USER_PREFIX
|
||||
#define XATTR_USER_PREFIX "user."
|
||||
#endif
|
||||
@@ -58,7 +58,7 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
|
||||
static int xattr_fremove( int filedes, const char *name )
|
||||
{
|
||||
@@ -388,6 +407,9 @@ static int xattr_fremove( int filedes, const char *name )
|
||||
@@ -371,6 +390,9 @@ static int xattr_fremove( int filedes, const char *name )
|
||||
return fremovexattr( filedes, name, 0 );
|
||||
#elif defined(HAVE_SYS_XATTR_H) || defined(HAVE_ATTR_XATTR_H)
|
||||
return fremovexattr( filedes, name );
|
||||
@@ -68,7 +68,7 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
@@ -400,6 +422,10 @@ static int xattr_fset( int filedes, const char *name, void *value, size_t size )
|
||||
@@ -383,6 +405,10 @@ static int xattr_fset( int filedes, const char *name, void *value, size_t size )
|
||||
return fsetxattr( filedes, name, value, size, 0, 0 );
|
||||
#elif defined(HAVE_SYS_XATTR_H) || defined(HAVE_ATTR_XATTR_H)
|
||||
return fsetxattr( filedes, name, value, size, 0 );
|
||||
@@ -79,7 +79,7 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
@@ -412,6 +438,10 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si
|
||||
@@ -395,6 +421,10 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si
|
||||
return getxattr( path, name, value, size, 0, 0 );
|
||||
#elif defined(HAVE_SYS_XATTR_H) || defined(HAVE_ATTR_XATTR_H)
|
||||
return getxattr( path, name, value, size );
|
||||
@@ -90,7 +90,7 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
@@ -424,6 +454,9 @@ static int xattr_remove( const char *path, const char *name )
|
||||
@@ -407,6 +437,9 @@ static int xattr_remove( const char *path, const char *name )
|
||||
return removexattr( path, name, 0 );
|
||||
#elif defined(HAVE_SYS_XATTR_H) || defined(HAVE_ATTR_XATTR_H)
|
||||
return removexattr( path, name );
|
||||
@@ -100,7 +100,7 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
@@ -436,6 +469,10 @@ static int xattr_set( const char *path, const char *name, void *value, size_t si
|
||||
@@ -419,6 +452,10 @@ static int xattr_set( const char *path, const char *name, void *value, size_t si
|
||||
return setxattr( path, name, value, size, 0, 0 );
|
||||
#elif defined(HAVE_SYS_XATTR_H) || defined(HAVE_ATTR_XATTR_H)
|
||||
return setxattr( path, name, value, size, 0 );
|
||||
@@ -112,5 +112,5 @@ index 301241e2edd..4ccc74c300a 100644
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
--
|
||||
2.29.2
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From f462fb516150f5f8cd7403e19217311987f6ba5e Mon Sep 17 00:00:00 2001
|
||||
From b4ff0ed25c0f95d720d7a7ace07f024512d27af2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Mon, 3 Apr 2017 05:56:19 +0200
|
||||
Subject: [PATCH] ntdll: Use HashLinks when searching for a dll using the
|
||||
@@ -9,10 +9,10 @@ Subject: [PATCH] ntdll: Use HashLinks when searching for a dll using the
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
|
||||
index c226c467cd2..c7d590c32dc 100644
|
||||
index 272ad323444..f3d39e001c6 100644
|
||||
--- a/dlls/ntdll/loader.c
|
||||
+++ b/dlls/ntdll/loader.c
|
||||
@@ -551,10 +551,10 @@ static WINE_MODREF *find_basename_module( LPCWSTR name )
|
||||
@@ -547,10 +547,10 @@ static WINE_MODREF *find_basename_module( LPCWSTR name )
|
||||
if (cached_modref && RtlEqualUnicodeString( &name_str, &cached_modref->ldr.BaseDllName, TRUE ))
|
||||
return cached_modref;
|
||||
|
||||
@@ -20,11 +20,11 @@ index c226c467cd2..c7d590c32dc 100644
|
||||
+ mark = &hash_table[hash_basename(name)];
|
||||
for (entry = mark->Flink; entry != mark; entry = entry->Flink)
|
||||
{
|
||||
- LDR_DATA_TABLE_ENTRY *mod = CONTAINING_RECORD(entry, LDR_DATA_TABLE_ENTRY, InLoadOrderLinks);
|
||||
+ LDR_DATA_TABLE_ENTRY *mod = CONTAINING_RECORD(entry, LDR_DATA_TABLE_ENTRY, HashLinks);
|
||||
if (RtlEqualUnicodeString( &name_str, &mod->BaseDllName, TRUE ))
|
||||
- WINE_MODREF *mod = CONTAINING_RECORD(entry, WINE_MODREF, ldr.InLoadOrderLinks);
|
||||
+ WINE_MODREF *mod = CONTAINING_RECORD(entry, WINE_MODREF, ldr.HashLinks);
|
||||
if (RtlEqualUnicodeString( &name_str, &mod->ldr.BaseDllName, TRUE ) && !mod->system)
|
||||
{
|
||||
cached_modref = CONTAINING_RECORD(mod, WINE_MODREF, ldr);
|
||||
--
|
||||
2.26.0
|
||||
2.33.0
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
From d823f033345ad18f5deea7530f1b3ad359616eb8 Mon Sep 17 00:00:00 2001
|
||||
From dfe3430017b0ed0f911598a07bc7ccf8de574077 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 16 Jan 2014 20:56:49 -0700
|
||||
Subject: [PATCH] ntdll: Add support for junction point creation.
|
||||
Subject: ntdll: Add support for junction point creation.
|
||||
|
||||
Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
|
||||
---
|
||||
@@ -14,13 +14,13 @@ Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
|
||||
create mode 100644 include/ntifs.h
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f030099941a..dbabb4d5a78 100644
|
||||
index bb26503dfd4..9e113d939ec 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2060,6 +2060,8 @@ AC_CHECK_FUNCS(\
|
||||
posix_fallocate \
|
||||
@@ -2027,6 +2027,8 @@ AC_CHECK_FUNCS(\
|
||||
prctl \
|
||||
proc_pidinfo \
|
||||
sched_yield \
|
||||
+ renameat \
|
||||
+ renameat2 \
|
||||
setproctitle \
|
||||
@@ -152,7 +152,7 @@ index 46037546e6e..7a01e947e13 100644
|
||||
test_mailslot_name();
|
||||
}
|
||||
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
|
||||
index eb5c6846a10..9d371f57969 100644
|
||||
index 689b943a5b1..dd7ab59de67 100644
|
||||
--- a/dlls/ntdll/unix/file.c
|
||||
+++ b/dlls/ntdll/unix/file.c
|
||||
@@ -35,6 +35,7 @@
|
||||
@@ -357,10 +357,10 @@ index eb5c6846a10..9d371f57969 100644
|
||||
TRACE("FSCTL_SET_SPARSE: Ignoring request\n");
|
||||
io->Information = 0;
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index a9a478e5433..3d5c88c041e 100644
|
||||
index c99b0e1e1c1..973b5a52569 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -548,6 +548,7 @@ SOURCES = \
|
||||
@@ -551,6 +551,7 @@ SOURCES = \
|
||||
ntdef.h \
|
||||
ntdsapi.h \
|
||||
ntgdi.h \
|
||||
@@ -417,5 +417,5 @@ index 00000000000..21d42e17325
|
||||
+
|
||||
+#endif /* __WINE_NTIFS_H */
|
||||
--
|
||||
2.33.0
|
||||
2.17.1
|
||||
|
||||
|
@@ -1,13 +1,13 @@
|
||||
From cfcae7fcb7243890a6b5c7f3397313ca894b19be Mon Sep 17 00:00:00 2001
|
||||
From 2253ea0333a80d04657da9018023c28b036ecfa5 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 16 Jan 2014 20:57:57 -0700
|
||||
Subject: [PATCH] ntdll: Add support for reading junction points.
|
||||
Subject: ntdll: Add support for reading junction points.
|
||||
|
||||
Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
|
||||
---
|
||||
dlls/ntdll/tests/file.c | 20 ++++++-
|
||||
dlls/ntdll/unix/file.c | 125 ++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 144 insertions(+), 1 deletion(-)
|
||||
dlls/ntdll/unix/file.c | 129 ++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 148 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
|
||||
index 7a01e947e13..3b7746650f3 100644
|
||||
@@ -55,10 +55,10 @@ index 7a01e947e13..3b7746650f3 100644
|
||||
|
||||
cleanup:
|
||||
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
|
||||
index f6c23f629b8..c6c4df8dba3 100644
|
||||
index dd7ab59de67..3b4b1cac833 100644
|
||||
--- a/dlls/ntdll/unix/file.c
|
||||
+++ b/dlls/ntdll/unix/file.c
|
||||
@@ -6084,6 +6084,125 @@ cleanup:
|
||||
@@ -6074,6 +6074,127 @@ cleanup:
|
||||
}
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ index f6c23f629b8..c6c4df8dba3 100644
|
||||
+ * Retrieve the unix name corresponding to a file handle and use that to find the destination of the
|
||||
+ * symlink corresponding to that file handle.
|
||||
+ */
|
||||
+NTSTATUS get_reparse_point(HANDLE handle, REPARSE_DATA_BUFFER *buffer, ULONG out_size)
|
||||
+NTSTATUS get_reparse_point(HANDLE handle, REPARSE_DATA_BUFFER *buffer, ULONG *size)
|
||||
+{
|
||||
+ char *unix_src, unix_dest[PATH_MAX];
|
||||
+ INT prefix_len, path_len, total_len;
|
||||
@@ -74,6 +74,7 @@ index f6c23f629b8..c6c4df8dba3 100644
|
||||
+ SIZE_T nt_dest_len = PATH_MAX;
|
||||
+ BOOL dest_allocated = FALSE;
|
||||
+ int dest_fd, needs_close;
|
||||
+ ULONG out_size = *size;
|
||||
+ int unix_dest_len;
|
||||
+ DWORD max_length;
|
||||
+ NTSTATUS status;
|
||||
@@ -171,6 +172,7 @@ index f6c23f629b8..c6c4df8dba3 100644
|
||||
+
|
||||
+ memcpy( subst_name, nt_dest, nt_dest_len );
|
||||
+ memcpy( print_name, &nt_dest[prefix_len], nt_dest_len - prefix_len*sizeof(WCHAR) );
|
||||
+ *size = total_len;
|
||||
+ buffer->ReparseDataLength = total_len - FIELD_OFFSET(typeof(*buffer), GenericReparseBuffer);
|
||||
+ status = STATUS_SUCCESS;
|
||||
+
|
||||
@@ -184,19 +186,21 @@ index f6c23f629b8..c6c4df8dba3 100644
|
||||
/******************************************************************************
|
||||
* NtFsControlFile (NTDLL.@)
|
||||
*/
|
||||
@@ -6166,6 +6285,12 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
|
||||
@@ -6156,6 +6277,14 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
|
||||
break;
|
||||
}
|
||||
|
||||
+ case FSCTL_GET_REPARSE_POINT:
|
||||
+ {
|
||||
+ REPARSE_DATA_BUFFER *buffer = (REPARSE_DATA_BUFFER *)out_buffer;
|
||||
+ status = get_reparse_point( handle, buffer, out_size );
|
||||
+ ULONG size = out_size;
|
||||
+ status = get_reparse_point( handle, buffer, &size );
|
||||
+ io->Information = size;
|
||||
+ break;
|
||||
+ }
|
||||
case FSCTL_SET_REPARSE_POINT:
|
||||
{
|
||||
REPARSE_DATA_BUFFER *buffer = (REPARSE_DATA_BUFFER *)in_buffer;
|
||||
--
|
||||
2.30.2
|
||||
2.17.1
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
From 882f91cd59e014e985c58fc36f6dc2b2a5679bf8 Mon Sep 17 00:00:00 2001
|
||||
From 0eece31261dab2d05c3d9e23138d87a0495f5cbb Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 16 Jan 2014 21:00:21 -0700
|
||||
Subject: [PATCH] ntdll: Add support for deleting junction points.
|
||||
Subject: ntdll: Add support for deleting junction points.
|
||||
|
||||
Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
|
||||
---
|
||||
@@ -71,10 +71,10 @@ index 3b7746650f3..0031f49693c 100644
|
||||
ok(bret, "Failed to remove temporary target directory!\n");
|
||||
RemoveDirectoryW(path);
|
||||
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
|
||||
index c6c4df8dba3..c6cdf54a061 100644
|
||||
index 3b4b1cac833..79cf0f2dbca 100644
|
||||
--- a/dlls/ntdll/unix/file.c
|
||||
+++ b/dlls/ntdll/unix/file.c
|
||||
@@ -6203,6 +6203,87 @@ cleanup:
|
||||
@@ -6195,6 +6195,87 @@ cleanup:
|
||||
}
|
||||
|
||||
|
||||
@@ -162,7 +162,7 @@ index c6c4df8dba3..c6cdf54a061 100644
|
||||
/******************************************************************************
|
||||
* NtFsControlFile (NTDLL.@)
|
||||
*/
|
||||
@@ -6285,6 +6366,22 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
|
||||
@@ -6277,6 +6358,22 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -207,5 +207,5 @@ index 21d42e17325..4539b89d583 100644
|
||||
+
|
||||
#endif /* __WINE_NTIFS_H */
|
||||
--
|
||||
2.30.2
|
||||
2.17.1
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user