diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2025-05-14 17:55:02 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2025-05-14 17:55:02 +0200 |
| commit | 4a70577e6f30da25decabb11e5f22ca2c22c50bd (patch) | |
| tree | b6ed528f0766cacdb28a6673a6f7aa1b13784acc /src/wrapped | |
| parent | b818a29499b91faa2a222606802526073969e3c2 (diff) | |
| download | box64-4a70577e6f30da25decabb11e5f22ca2c22c50bd.tar.gz box64-4a70577e6f30da25decabb11e5f22ca2c22c50bd.zip | |
[WRAPPER] added arm64 special case to of_unconvert helper function
Diffstat (limited to 'src/wrapped')
| -rw-r--r-- | src/wrapped/wrappedlibc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c index 0ee05f00..a0e8361f 100644 --- a/src/wrapped/wrappedlibc.c +++ b/src/wrapped/wrappedlibc.c @@ -652,9 +652,13 @@ int of_unconvert(int a) SUPER(); #undef GO int missing = 0; - if(!O_NOFOLLOW) missing |= X86_O_NOFOLLOW; + #ifdef ARM64 + if(!O_LARGEFILE) { + if((a&(0400000))==(0400000)) {a&=~(0400000); b|=(X86_O_LARGEFILE);} + } + #else if(!O_LARGEFILE) missing |= X86_O_LARGEFILE; - // flags 0x20000 unknown?! + #endif if(a && (a&~missing)) { printf_log(LOG_NONE, "Warning, of_unconvert(...) left over 0x%x, converted 0x%x\n", a, b); } |