mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-11-21 16:46:54 -08:00
Rebase against 77fc4697dd7c2b81181c4549c22210bc16913736.
NtCurrentTeb()->Reserved5[0] is now used for a different purpose on x86_64 OSX.
This commit is contained in:
parent
50a53675fe
commit
0fabea78c6
@ -51,7 +51,7 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "ba2e025b94fa3705d439803a545129c32e8818af"
|
||||
echo "77fc4697dd7c2b81181c4549c22210bc16913736"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
|
@ -107,8 +107,8 @@ index 356d631..a91e478 100644
|
||||
SERVER_END_REQ;
|
||||
|
||||
+ /* initialize thread shared memory pointers */
|
||||
+ NtCurrentTeb()->Reserved5[0] = server_get_shared_memory( 0 );
|
||||
+ NtCurrentTeb()->Reserved5[1] = server_get_shared_memory( NtCurrentTeb()->ClientId.UniqueThread );
|
||||
+ NtCurrentTeb()->Reserved5[1] = server_get_shared_memory( 0 );
|
||||
+ NtCurrentTeb()->Reserved5[2] = server_get_shared_memory( NtCurrentTeb()->ClientId.UniqueThread );
|
||||
+
|
||||
is_wow64 = !is_win64 && (server_cpus & ((1 << CPU_x86_64) | (1 << CPU_ARM64))) != 0;
|
||||
ntdll_get_thread_data()->wow64_redir = is_wow64;
|
||||
@ -129,7 +129,7 @@ index 306a6c6..4af9caf 100644
|
||||
LdrShutdownThread();
|
||||
RtlFreeThreadActivationContextStack();
|
||||
|
||||
+ shmlocal = interlocked_xchg_ptr( &NtCurrentTeb()->Reserved5[1], NULL );
|
||||
+ shmlocal = interlocked_xchg_ptr( &NtCurrentTeb()->Reserved5[2], NULL );
|
||||
+ if (shmlocal) NtUnmapViewOfSection( NtCurrentProcess(), shmlocal );
|
||||
+
|
||||
pthread_sigmask( SIG_BLOCK, &server_block_set, NULL );
|
||||
@ -146,13 +146,13 @@ index d573d1f..695389a 100644
|
||||
+/* returns a pointer to the wineserver global shared memory block */
|
||||
+static inline shmglobal_t *wine_get_shmglobal(void)
|
||||
+{
|
||||
+ return (shmglobal_t *)NtCurrentTeb()->Reserved5[0];
|
||||
+ return (shmglobal_t *)NtCurrentTeb()->Reserved5[1];
|
||||
+}
|
||||
+
|
||||
+/* returns a pointer to the wineserver local shared memory block */
|
||||
+static inline shmlocal_t *wine_get_shmlocal(void)
|
||||
+{
|
||||
+ return (shmlocal_t *)NtCurrentTeb()->Reserved5[1];
|
||||
+ return (shmlocal_t *)NtCurrentTeb()->Reserved5[2];
|
||||
+}
|
||||
|
||||
/* macros for server requests */
|
||||
@ -166,7 +166,7 @@ index f35091c..a969067 100644
|
||||
PVOID ReservedForOle; /* f80/1758 */
|
||||
ULONG WaitingOnLoaderLock; /* f84/1760 */
|
||||
- PVOID Reserved5[3]; /* f88/1768 */
|
||||
+ PVOID Reserved5[3]; /* f88/1768 used for wineserver shared memory */
|
||||
+ PVOID Reserved5[3]; /* f88/1768 used for x86_64 OSX and wineserver shared memory */
|
||||
PVOID *TlsExpansionSlots; /* f94/1780 */
|
||||
ULONG ImpersonationLocale; /* f98/1788 */
|
||||
ULONG IsImpersonating; /* f9c/178c */
|
||||
|
Loading…
Reference in New Issue
Block a user