Rebase against 17529582402ebe27ef975fc7dcb8353f4f95e629.

This commit is contained in:
Zebediah Figura
2020-06-08 15:59:31 -05:00
parent 044cb93066
commit 9a4c8c5631
10 changed files with 156 additions and 336 deletions

View File

@@ -1,4 +1,4 @@
From 46968c583a30476a86463530d0047699e64529b5 Mon Sep 17 00:00:00 2001
From bd60a4308f3ec1df20328887335b4c95f9be215d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 4 Oct 2014 02:53:22 +0200
Subject: [PATCH] ntdll: Setup a temporary signal handler during process
@@ -27,10 +27,10 @@ index 65c65cc02d8..63a4b597872 100644
extern void debug_init(void) DECLSPEC_HIDDEN;
extern TEB *thread_init( SIZE_T *info_size, BOOL *suspend ) DECLSPEC_HIDDEN;
diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c
index 8ff9f66d3f0..44e3d2df523 100644
index a09848449a6..c6f7231fec6 100644
--- a/dlls/ntdll/signal_arm.c
+++ b/dlls/ntdll/signal_arm.c
@@ -773,6 +773,12 @@ void signal_init_process(void)
@@ -792,6 +792,12 @@ void signal_init_process(void)
exit(1);
}
@@ -44,11 +44,11 @@ index 8ff9f66d3f0..44e3d2df523 100644
/***********************************************************************
* RtlUnwind (NTDLL.@)
diff --git a/dlls/ntdll/signal_arm64.c b/dlls/ntdll/signal_arm64.c
index 104ffbf6df9..e7c6abd0046 100644
index a9a58a2e7ad..a9c6614794e 100644
--- a/dlls/ntdll/signal_arm64.c
+++ b/dlls/ntdll/signal_arm64.c
@@ -1100,6 +1100,12 @@ int CDECL __wine_set_signal_handler(unsigned int sig, wine_signal_handler wsh)
return 0;
@@ -1047,6 +1047,12 @@ static void usr2_handler( int signal, siginfo_t *siginfo, void *sigcontext )
restore_context( context, sigcontext );
}
+/**********************************************************************
@@ -61,10 +61,10 @@ index 104ffbf6df9..e7c6abd0046 100644
/**********************************************************************
* signal_init_process
diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c
index 1b0b9352a87..0fe9f7a3c84 100644
index 83868f25121..b048b2bc688 100644
--- a/dlls/ntdll/signal_i386.c
+++ b/dlls/ntdll/signal_i386.c
@@ -1621,6 +1621,31 @@ static BOOL handle_interrupt( unsigned int interrupt, ucontext_t *sigcontext, st
@@ -1575,6 +1575,31 @@ static BOOL handle_interrupt( unsigned int interrupt, ucontext_t *sigcontext, st
}
@@ -96,7 +96,7 @@ index 1b0b9352a87..0fe9f7a3c84 100644
/**********************************************************************
* segv_handler
*
@@ -1948,6 +1973,34 @@ void signal_init_process(void)
@@ -1883,6 +1908,34 @@ void signal_init_process(void)
exit(1);
}
@@ -132,11 +132,11 @@ index 1b0b9352a87..0fe9f7a3c84 100644
/*******************************************************************
* RtlUnwind (NTDLL.@)
diff --git a/dlls/ntdll/signal_powerpc.c b/dlls/ntdll/signal_powerpc.c
index 7e73322cbeb..07f0b89f30a 100644
index 879b2b58c49..f17d6267102 100644
--- a/dlls/ntdll/signal_powerpc.c
+++ b/dlls/ntdll/signal_powerpc.c
@@ -637,6 +637,12 @@ int CDECL __wine_set_signal_handler(unsigned int sig, wine_signal_handler wsh)
return 0;
@@ -634,6 +634,12 @@ static void quit_handler( int signal, siginfo_t *siginfo, void *sigcontext )
unix_funcs->abort_thread(0);
}
+/**********************************************************************
@@ -147,12 +147,12 @@ index 7e73322cbeb..07f0b89f30a 100644
+}
/**********************************************************************
* signal_init_process
* usr1_handler
diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c
index 0ccc7cbceb6..dc8a1a987c5 100644
index c6b0fbf618d..bb481ba1b81 100644
--- a/dlls/ntdll/signal_x86_64.c
+++ b/dlls/ntdll/signal_x86_64.c
@@ -2849,6 +2849,12 @@ void signal_init_process(void)
@@ -2777,6 +2777,12 @@ void signal_init_process(void)
exit(1);
}
@@ -166,7 +166,7 @@ index 0ccc7cbceb6..dc8a1a987c5 100644
static ULONG64 get_int_reg( CONTEXT *context, int reg )
{
diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c
index 8918b39a9c5..a2f5df1b1c2 100644
index d045466f6d2..49daa33ca58 100644
--- a/dlls/ntdll/thread.c
+++ b/dlls/ntdll/thread.c
@@ -186,6 +186,7 @@ TEB *thread_init( SIZE_T *info_size, BOOL *suspend )