diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-29 18:41:38 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-29 18:41:38 +0200 |
| commit | 6cb6605a63ad066ba98cc129dab539e58a695f35 (patch) | |
| tree | f563c94ad469813aa2d9b9009dc4be0bafdac58e /src | |
| parent | 6ad164d522d19d41fb12243079e23cc01cefbdeb (diff) | |
| download | box64-6cb6605a63ad066ba98cc129dab539e58a695f35.tar.gz box64-6cb6605a63ad066ba98cc129dab539e58a695f35.zip | |
Small change in start en end of emulated software
Diffstat (limited to 'src')
| -rwxr-xr-x | src/main.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main.c b/src/main.c index 66bfd94d..81eb7b19 100755 --- a/src/main.c +++ b/src/main.c @@ -596,8 +596,8 @@ void endBox64() // than call all the Fini (some "smart" ordering of the fini may be needed, but for now, callign in this order should be good enough) printf_log(LOG_DEBUG, "Calling fini for all loaded elfs and unload native libs\n"); RunElfFini(my_context->elfs[0], emu); - FreeLibrarian(&my_context->maplib, emu); // unload all libs FreeLibrarian(&my_context->local_maplib, emu); // unload all libs + FreeLibrarian(&my_context->maplib, emu); // unload all libs // waiting for all thread except this one to finish int this_thread = GetTID(); int pid = getpid(); @@ -953,6 +953,7 @@ int main(int argc, const char **argv, const char **env) { SetRSI(emu, my_context->argc); SetRDX(emu, (uint64_t)my_context->argv); SetRCX(emu, (uint64_t)my_context->envv); + SetRBP(emu, 0); // Frame pointer so to "No more frame pointer" // child fork to handle traces pthread_atfork(NULL, NULL, my_child_fork); |