diff options
| author | Yang Liu <liuyang22@iscas.ac.cn> | 2023-05-07 22:13:56 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-07 16:13:56 +0200 |
| commit | 9f38e81735b10668d64974033b4bb5097219ee34 (patch) | |
| tree | 57827cc130a3e79a46c58f4e5ce8946c78f4131a /src/wrapped/wrappedopenal.c | |
| parent | 47ecde75ec19a58f458c1131ec1968d11d58e7e1 (diff) | |
| download | box64-9f38e81735b10668d64974033b4bb5097219ee34.tar.gz box64-9f38e81735b10668d64974033b4bb5097219ee34.zip | |
[WRAPPER] Used RunFunctionFmt for better sign-extend handling (#768)
* [WRAPPER] Used RunFunctionFmt for better sign-extend handling * [WRAPPER] Fixed some typos * [WRAPPER] Use L for unsigned long for better portability * [WRAPPER] More replace from U to L
Diffstat (limited to 'src/wrapped/wrappedopenal.c')
| -rwxr-xr-x | src/wrapped/wrappedopenal.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/wrapped/wrappedopenal.c b/src/wrapped/wrappedopenal.c index 96cc1bb6..4d65fdd8 100755 --- a/src/wrapped/wrappedopenal.c +++ b/src/wrapped/wrappedopenal.c @@ -38,7 +38,7 @@ GO(4) static uintptr_t my_Request_fct_##A = 0; \ static void my_Request_##A(int32_t a, int32_t b) \ { \ - RunFunction(my_context, my_Request_fct_##A, 2, a, b); \ + RunFunctionFmt(my_context, my_Request_fct_##A, "ii", a, b); \ } SUPER() #undef GO @@ -113,7 +113,7 @@ void freeALProcWrapper(box64context_t* context) context->almymap = NULL; } -EXPORT void* my_alGetProcAddress(x64emu_t* emu, void* name) +EXPORT void* my_alGetProcAddress(x64emu_t* emu, void* name) { khint_t k; const char* rname = (const char*)name; @@ -130,7 +130,7 @@ EXPORT void* my_alGetProcAddress(x64emu_t* emu, void* name) strcpy(tmp, "my_"); strcat(tmp, rname); symbol = dlsym(emu->context->box64lib, tmp); - } else + } else symbol = my->alGetProcAddress(name); if(!symbol) return NULL; // easy @@ -138,7 +138,7 @@ EXPORT void* my_alGetProcAddress(x64emu_t* emu, void* name) uintptr_t ret = CheckBridged(emu->context->system, symbol); if(ret) return (void*)ret; // already bridged - // get wrapper + // get wrapper k = kh_get(symbolmap, emu->context->alwrappers, rname); if(k==kh_end(emu->context->alwrappers)) { printf_log(LOG_INFO, "Warning, no wrapper for %s\n", rname); @@ -166,14 +166,14 @@ EXPORT void* my_alcGetProcAddress(x64emu_t* emu, void* device, void* name) strcpy(tmp, "my_"); strcat(tmp, rname); symbol = dlsym(emu->context->box64lib, tmp); - } else + } else symbol = my->alcGetProcAddress(device, name); if(!symbol) return NULL; // easy uintptr_t ret = CheckBridged(emu->context->system, symbol); if(ret) return (void*)ret; // already bridged - // get wrapper + // get wrapper k = kh_get(symbolmap, emu->context->alwrappers, rname); if(k==kh_end(emu->context->alwrappers)) { printf_log(LOG_INFO, "Warning, no wrapper for %s\n", rname); |