Rebase against 7096ab45444d7b7cbb926b5a51af0cbc46960ed3

This commit is contained in:
Alistair Leslie-Hughes 2020-04-04 08:55:44 +11:00
parent 90109a5fc5
commit 4d01e48843
6 changed files with 60 additions and 59 deletions

View File

@ -1,4 +1,4 @@
From d216f85a593a09e7983d9178fb3e1f20bfcf08cc Mon Sep 17 00:00:00 2001
From 63d2046a8f4388fbc7c12a07ae5f412fccc1b202 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Thu, 29 May 2014 23:43:45 +0200
Subject: [PATCH] loader: Add commandline option --patches to show the patch
@ -14,7 +14,7 @@ Subject: [PATCH] loader: Add commandline option --patches to show the patch
6 files changed, 58 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/misc.c b/dlls/ntdll/misc.c
index c29a1c26c..8906e1942 100644
index c29a1c26c26..8906e194272 100644
--- a/dlls/ntdll/misc.c
+++ b/dlls/ntdll/misc.c
@@ -60,6 +60,14 @@ const char * CDECL NTDLL_wine_get_version(void)
@ -33,10 +33,10 @@ index c29a1c26c..8906e1942 100644
* wine_get_build_id (NTDLL.@)
*/
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index 7aa953ca6..cf7d5b6f9 100644
index e61a2578da5..52db67fd978 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -1566,6 +1566,7 @@
@@ -1571,6 +1571,7 @@
# Version
@ cdecl wine_get_version() NTDLL_wine_get_version
@ -45,7 +45,7 @@ index 7aa953ca6..cf7d5b6f9 100644
@ cdecl wine_get_host_version(ptr ptr) NTDLL_wine_get_host_version
diff --git a/include/wine/library.h b/include/wine/library.h
index a6fe28059..511bf4722 100644
index f338c4da190..1f992da6062 100644
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -47,6 +47,7 @@ extern const char *wine_get_data_dir(void);
@ -57,7 +57,7 @@ index a6fe28059..511bf4722 100644
extern void wine_init_argv0_path( const char *argv0 );
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
diff --git a/libs/wine/config.c b/libs/wine/config.c
index 2a3314cbf..5b66c063d 100644
index 2a3314cbfda..5b66c063db6 100644
--- a/libs/wine/config.c
+++ b/libs/wine/config.c
@@ -504,6 +504,12 @@ const char *wine_get_version(void)
@ -74,22 +74,22 @@ index 2a3314cbf..5b66c063d 100644
const char *wine_get_build_id(void)
{
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index 3f2c430fa..ca46979f5 100644
index 7ea849b908e..a7359ee7872 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -28,6 +28,7 @@ WINE_1.0
wine_get_ss;
@@ -22,6 +22,7 @@ WINE_1.0
wine_get_server_dir;
wine_get_user_name;
wine_get_version;
+ wine_get_patches;
wine_init;
wine_init_argv0_path;
wine_ldt_alloc_entries;
wine_mmap_add_reserved_area;
diff --git a/loader/main.c b/loader/main.c
index f197cf802..f6629128d 100644
index 407c897892d..d97d6b28bf8 100644
--- a/loader/main.c
+++ b/loader/main.c
@@ -54,7 +54,8 @@ static void check_command_line( int argc, char *argv[] )
@@ -53,7 +53,8 @@ static void check_command_line( int argc, char *argv[] )
static const char usage[] =
"Usage: wine PROGRAM [ARGUMENTS...] Run the specified program\n"
" wine --help Display this help and exit\n"
@ -99,7 +99,7 @@ index f197cf802..f6629128d 100644
if (argc <= 1)
{
@@ -71,6 +72,45 @@ static void check_command_line( int argc, char *argv[] )
@@ -70,6 +71,45 @@ static void check_command_line( int argc, char *argv[] )
printf( "%s\n", wine_get_build_id() );
exit(0);
}
@ -146,5 +146,5 @@ index f197cf802..f6629128d 100644
--
2.25.0
2.25.1

View File

@ -1,4 +1,4 @@
From df12fdb8d4cdf11d9f72a068923a5b0097e36bdb Mon Sep 17 00:00:00 2001
From f600092be294a5bb42e42abcd20cc784d1ca5eab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Wed, 28 May 2014 19:50:51 +0200
Subject: [PATCH] loader: Add commandline option --check-libs.
@ -12,7 +12,7 @@ Subject: [PATCH] loader: Add commandline option --check-libs.
5 files changed, 213 insertions(+), 1 deletion(-)
diff --git a/include/wine/library.h b/include/wine/library.h
index 511bf4722a0..557cec20cf8 100644
index 1f992da6062..60d6b525c75 100644
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -44,6 +44,7 @@ extern "C" {
@ -167,10 +167,10 @@ index 5b66c063db6..e0988513e14 100644
const char *wine_get_server_dir(void)
{
diff --git a/libs/wine/loader.c b/libs/wine/loader.c
index 2a569f5b739..5f10c3f9d3e 100644
index 53e33c496a9..eb7dfb59fb8 100644
--- a/libs/wine/loader.c
+++ b/libs/wine/loader.c
@@ -1072,6 +1072,42 @@ void *wine_dlopen( const char *filename, int flag, char *error, size_t errorsize
@@ -1073,6 +1073,42 @@ void *wine_dlopen( const char *filename, int flag, char *error, size_t errorsize
return ret;
}
@ -214,7 +214,7 @@ index 2a569f5b739..5f10c3f9d3e 100644
* wine_dlsym
*/
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index ca46979f5b9..22a4e73b05b 100644
index a7359ee7872..9c4c86dde4d 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -9,6 +9,7 @@ WINE_1.0
@ -225,14 +225,14 @@ index ca46979f5b9..22a4e73b05b 100644
wine_dlclose;
wine_dll_enum_load_path;
wine_dll_set_callback;
@@ -24,6 +25,7 @@ WINE_1.0
wine_get_es;
wine_get_fs;
wine_get_gs;
@@ -19,6 +20,7 @@ WINE_1.0
wine_get_build_id;
wine_get_config_dir;
wine_get_data_dir;
+ wine_get_libs;
wine_get_server_dir;
wine_get_ss;
wine_get_user_name;
wine_get_version;
diff --git a/loader/main.c b/loader/main.c
index d97d6b28bf8..49dc996e354 100644
--- a/loader/main.c

View File

@ -1,19 +1,19 @@
From 11d770c9800f37a9148b776836fdb24f8c43d403 Mon Sep 17 00:00:00 2001
From 20012afe9a7e47f06550c9802e62d66ac9f9abba Mon Sep 17 00:00:00 2001
From: Paul Gofman <gofmanp@gmail.com>
Date: Tue, 14 Jan 2020 21:28:57 +0300
Subject: [PATCH] libs/wine: Add functions for managing free area list.
---
include/wine/library.h | 5 +++
include/wine/library.h | 6 ++++
libs/wine/mmap.c | 75 ++++++++++++++++++++++++++++++++----------
libs/wine/wine.map | 4 +++
3 files changed, 67 insertions(+), 17 deletions(-)
3 files changed, 68 insertions(+), 17 deletions(-)
diff --git a/include/wine/library.h b/include/wine/library.h
index a6fe28059..006c59ba3 100644
index 60d6b525c75..70b6a0b3055 100644
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -76,6 +76,11 @@ extern int wine_mmap_is_in_reserved_area( void *addr, size_t size );
@@ -79,6 +79,12 @@ extern int wine_mmap_is_in_reserved_area( void *addr, size_t size );
extern int wine_mmap_enum_reserved_areas( int (*enum_func)(void *base, size_t size, void *arg),
void *arg, int top_down );
@ -22,11 +22,12 @@ index a6fe28059..006c59ba3 100644
+extern int wine_mmap_is_in_free_area( void *addr, size_t size );
+extern int wine_mmap_enum_free_areas( int (*enum_func)(void *base, size_t size, void *arg),
+ void *arg, int top_down );
#ifdef __i386__
/* LDT management */
+
#ifdef __cplusplus
}
#endif
diff --git a/libs/wine/mmap.c b/libs/wine/mmap.c
index f2b5adc1d..baa466c77 100644
index f2b5adc1d29..baa466c7766 100644
--- a/libs/wine/mmap.c
+++ b/libs/wine/mmap.c
@@ -52,7 +52,9 @@ struct reserved_area
@ -240,10 +241,10 @@ index f2b5adc1d..baa466c77 100644
+ return wine_mmap_enum_areas(&free_areas_list, enum_func, arg, top_down);
+}
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index f0c94a950..3fc30237e 100644
index 9c4c86dde4d..32bf99bd6e6 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -51,6 +51,10 @@ WINE_1.0
@@ -31,6 +31,10 @@ WINE_1.0
wine_mmap_enum_reserved_areas;
wine_mmap_is_in_reserved_area;
wine_mmap_remove_reserved_area;
@ -251,9 +252,9 @@ index f0c94a950..3fc30237e 100644
+ wine_mmap_enum_free_areas;
+ wine_mmap_is_in_free_area;
+ wine_mmap_remove_free_area;
wine_set_fs;
wine_set_gs;
wine_wctype_table;
/* the following functions are obsolete and only exported for backwards compatibility */
--
2.25.0
2.25.1

View File

@ -1,4 +1,4 @@
From 18e7f7c6475673f382a8d3015140383c2dd756b0 Mon Sep 17 00:00:00 2001
From 338f514f1468d77ae19ac9bbe7ba7d2b018ec83c Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Thu, 28 Apr 2016 17:01:16 +0200
Subject: [PATCH] libs/wine: Allow to modify reserved LDT entries.
@ -43,10 +43,10 @@ index 70b22367e18..a454bf118cc 100644
}
}
diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c
index e812f634ff9..16ee93e001a 100644
index 2db76f0e250..fd1a764dacf 100644
--- a/dlls/ntdll/signal_i386.c
+++ b/dlls/ntdll/signal_i386.c
@@ -2558,8 +2558,6 @@ NTSTATUS get_thread_ldt_entry( HANDLE handle, void *data, ULONG len, ULONG *ret_
@@ -2614,8 +2614,6 @@ NTSTATUS get_thread_ldt_entry( HANDLE handle, void *data, ULONG len, ULONG *ret_
NTSTATUS WINAPI NtSetLdtEntries( ULONG sel1, LDT_ENTRY entry1, ULONG sel2, LDT_ENTRY entry2 )
{
if (sel1 >> 16 || sel2 >> 16) return STATUS_INVALID_LDT_DESCRIPTOR;
@ -56,10 +56,10 @@ index e812f634ff9..16ee93e001a 100644
ldt_lock();
if (sel1) ldt_set_entry( sel1, entry1 );
diff --git a/libs/wine/ldt.c b/libs/wine/ldt.c
index baf12a2e3a7..b9371814ba2 100644
index a8f4925019b..5e85c1137c8 100644
--- a/libs/wine/ldt.c
+++ b/libs/wine/ldt.c
@@ -170,8 +170,6 @@ static int internal_set_entry( unsigned short sel, const LDT_ENTRY *entry )
@@ -225,8 +225,6 @@ static int internal_set_entry( unsigned short sel, const LDT_ENTRY *entry )
{
int ret = 0, index = sel >> 3;
@ -68,15 +68,15 @@ index baf12a2e3a7..b9371814ba2 100644
#ifdef linux
{
struct modify_ldt_s ldt_info;
@@ -223,7 +221,7 @@ static int internal_set_entry( unsigned short sel, const LDT_ENTRY *entry )
wine_ldt_copy.limit[index] = wine_ldt_get_limit(entry);
wine_ldt_copy.flags[index] = (entry->HighWord.Bits.Type |
@@ -278,7 +276,7 @@ static int internal_set_entry( unsigned short sel, const LDT_ENTRY *entry )
wine_ldt_copy_obsolete.limit[index] = wine_ldt_get_limit(entry);
wine_ldt_copy_obsolete.flags[index] = (entry->HighWord.Bits.Type |
(entry->HighWord.Bits.Default_Big ? WINE_LDT_FLAGS_32BIT : 0) |
- (wine_ldt_copy.flags[index] & WINE_LDT_FLAGS_ALLOCATED));
- (wine_ldt_copy_obsolete.flags[index] & WINE_LDT_FLAGS_ALLOCATED));
+ WINE_LDT_FLAGS_ALLOCATED);
}
return ret;
}
--
2.26.0
2.25.1

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "3047385437c7ef36996d0418ac378677f3e9d67c"
echo "7096ab45444d7b7cbb926b5a51af0cbc46960ed3"
}
# Show version information

View File

@ -1,4 +1,4 @@
From cc13b2bb6b823df3de62dfacabeff22ebb2cf93e Mon Sep 17 00:00:00 2001
From b2d95f8d335ec606f9779eebb3bbcbed7d4c00ad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 11 May 2017 05:32:55 +0200
Subject: [PATCH] winebuild: Generate syscall thunks for ntdll exports.
@ -17,7 +17,7 @@ Based on a patch by Erich E. Hoover.
9 files changed, 206 insertions(+), 27 deletions(-)
diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c
index ba127c00361..915b344aabe 100644
index 5d01acd00fc..0b2a62fe1a8 100644
--- a/dlls/ntdll/signal_i386.c
+++ b/dlls/ntdll/signal_i386.c
@@ -481,6 +481,9 @@ static ULONG first_ldt_entry = 32;
@ -30,16 +30,16 @@ index ba127c00361..915b344aabe 100644
enum i386_trap_code
{
TRAP_x86_UNKNOWN = -1, /* Unknown fault (TRAP_sig not defined) */
@@ -1512,7 +1515,7 @@ NTSTATUS CDECL DECLSPEC_HIDDEN __regs_NtGetContextThread( DWORD edi, DWORD esi,
@@ -1519,7 +1522,7 @@ NTSTATUS CDECL DECLSPEC_HIDDEN __regs_NtGetContextThread( DWORD edi, DWORD esi,
{
context->Ebp = ebp;
context->Esp = (DWORD)&retaddr;
- context->Eip = *(&edi - 1);
+ context->Eip = (DWORD)__syscall_NtGetContextThread + 18;
context->SegCs = wine_get_cs();
context->SegSs = wine_get_ss();
context->SegCs = get_cs();
context->SegSs = get_ds();
context->EFlags = eflags;
@@ -2599,6 +2602,7 @@ NTSTATUS signal_alloc_thread( TEB **teb )
@@ -2613,6 +2616,7 @@ NTSTATUS signal_alloc_thread( TEB **teb )
*teb = addr;
(*teb)->Tib.Self = &(*teb)->Tib;
(*teb)->Tib.ExceptionList = (void *)~0UL;
@ -48,7 +48,7 @@ index ba127c00361..915b344aabe 100644
if (!(thread_data->fs = ldt_alloc_fs( *teb, first_thread )))
{
diff --git a/dlls/ntdll/tests/exception.c b/dlls/ntdll/tests/exception.c
index 249ba9d7c39..b10e2f65553 100644
index 72afb0a3764..fbd90661ee0 100644
--- a/dlls/ntdll/tests/exception.c
+++ b/dlls/ntdll/tests/exception.c
@@ -1643,6 +1643,8 @@ static void test_thread_context(void)
@ -61,7 +61,7 @@ index 249ba9d7c39..b10e2f65553 100644
ok( context.SegCs == LOWORD(expect.SegCs), "wrong SegCs %08x/%08x\n", context.SegCs, expect.SegCs );
ok( context.SegDs == LOWORD(expect.SegDs), "wrong SegDs %08x/%08x\n", context.SegDs, expect.SegDs );
diff --git a/include/winternl.h b/include/winternl.h
index 7ab105752df..e469012b236 100644
index d4316092e05..9e9a5eb819e 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -359,7 +359,7 @@ typedef struct _TEB
@ -253,7 +253,7 @@ index be705c25f0f..004b6aea7ab 100644
}
diff --git a/tools/winebuild/spec16.c b/tools/winebuild/spec16.c
index 3a7e457282a..a179175b8c1 100644
index a52c03aaa6a..15ef9a3f893 100644
--- a/tools/winebuild/spec16.c
+++ b/tools/winebuild/spec16.c
@@ -495,27 +495,6 @@ static int relay_type_compare( const void *e1, const void *e2 )
@ -458,5 +458,5 @@ index be877080486..63aeeca4468 100644
+ return j + 1;
+}
--
2.26.0
2.25.1