diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-05-10 17:21:14 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-05-10 17:21:14 +0200 |
| commit | 1f4cc1cf884e0c7befdfea601def2291e54459be (patch) | |
| tree | 53f57aeff400515e4a025725d3cd6bde22db0dd2 /src/box64context.c | |
| parent | 92dd53177f0119c0638c057ea7da5204046846d0 (diff) | |
| download | box64-1f4cc1cf884e0c7befdfea601def2291e54459be.tar.gz box64-1f4cc1cf884e0c7befdfea601def2291e54459be.zip | |
Optimized Exit bridge managment
Diffstat (limited to 'src/box64context.c')
| -rwxr-xr-x | src/box64context.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/box64context.c b/src/box64context.c index b08b5e2a..fc626305 100755 --- a/src/box64context.c +++ b/src/box64context.c @@ -213,6 +213,7 @@ box64context_t *NewBox64Context(int argc) context->local_maplib = NewLibrarian(context, 1); context->versym = NewDictionnary(); context->system = NewBridge(); + // Cannot use Bridge name as the map is not initialized yet // create vsyscall context->vsyscall = AddBridge(context->system, vFEv, x64Syscall, 0, NULL); // create the vsyscalls @@ -223,6 +224,8 @@ box64context_t *NewBox64Context(int argc) addAlternate((void*)0xffffffffff600000, (void*)context->vsyscalls[0]); addAlternate((void*)0xffffffffff600400, (void*)context->vsyscalls[1]); addAlternate((void*)0xffffffffff600800, (void*)context->vsyscalls[2]); + // create exit bridge + context->exit_bridge = AddBridge(context->system, NULL, NULL, 0, NULL); // get handle to box64 itself context->box64lib = dlopen(NULL, RTLD_NOW|RTLD_GLOBAL); context->dlprivate = NewDLPrivate(); |