about summary refs log tree commit diff stats
path: root/src/libtools/threads.c
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-12-17 11:40:14 +0100
committerptitSeb <sebastien.chev@gmail.com>2022-12-17 11:40:14 +0100
commit7144efff4e83ccc48294eb4f9cb0cab11befd2dc (patch)
treebaac4329ee922649407cb1a267073b91e045305a /src/libtools/threads.c
parent3ae31c34f6792327c9d855d73fa09a9f374b464a (diff)
downloadbox64-7144efff4e83ccc48294eb4f9cb0cab11befd2dc.tar.gz
box64-7144efff4e83ccc48294eb4f9cb0cab11befd2dc.zip
Reset Segment cache when changing TLS address
Diffstat (limited to 'src/libtools/threads.c')
-rwxr-xr-xsrc/libtools/threads.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libtools/threads.c b/src/libtools/threads.c
index 820e079c..d1131363 100755
--- a/src/libtools/threads.c
+++ b/src/libtools/threads.c
@@ -247,6 +247,7 @@ static void* pthread_routine(void* p)
 	et->emu->type = EMUTYPE_MAIN;
 	// setup callstack and run...
 	x64emu_t* emu = et->emu;
+	ResetSegmentsCache(emu);
 	Push64(emu, 0);	// PUSH 0 (backtrace marker: return address is 0)
 	Push64(emu, 0);	// PUSH BP
 	R_RBP = R_RSP;	// MOV BP, SP