diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2025-01-25 18:57:02 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2025-01-25 18:57:02 +0100 |
| commit | c5737428456b07d3f9d57bbc458096c437ffbd38 (patch) | |
| tree | bc21c4e4efd3933685f73fa0776eea33b66944e8 /src/wrapped | |
| parent | dab01b8b9ff763bb14d9615f30b47bcfed555c5b (diff) | |
| download | box64-c5737428456b07d3f9d57bbc458096c437ffbd38.tar.gz box64-c5737428456b07d3f9d57bbc458096c437ffbd38.zip | |
Expanded file mapping tracking for future use (might help #2295)
Diffstat (limited to 'src/wrapped')
| -rw-r--r-- | src/wrapped/wrappedlibc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c index d3af7de0..e6d7177a 100644 --- a/src/wrapped/wrappedlibc.c +++ b/src/wrapped/wrappedlibc.c @@ -3005,8 +3005,10 @@ EXPORT void* my_mmap64(x64emu_t* emu, void *addr, size_t length, int prot, int f prot |= PROT_NEVERCLEAN; } } - DetectUnityPlayer(fd); - RecordEnvMappings((uintptr_t)addr, length, fd); + if(fd>0) { + DetectUnityPlayer(fd); + RecordEnvMappings((uintptr_t)ret, length, fd); + } if(emu) setProtection_mmap((uintptr_t)ret, length, prot); else @@ -3082,6 +3084,7 @@ EXPORT int my_munmap(x64emu_t* emu, void* addr, size_t length) #endif if(!ret) { freeProtection((uintptr_t)addr, length); + RemoveMapping((uintptr_t)addr, length); } errno = e; // preseve errno return ret; |