diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2025-04-26 10:12:28 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2025-04-26 10:12:28 +0200 |
| commit | 6796b9ca02405523d790857eebcfafc04e6486e8 (patch) | |
| tree | 2778e7230e5f56d57901ea6b7e0323d1411c5ab3 /src | |
| parent | e4da025dc00257b2b6ad1f5d97df7960e80bcf0e (diff) | |
| download | box64-6796b9ca02405523d790857eebcfafc04e6486e8.tar.gz box64-6796b9ca02405523d790857eebcfafc04e6486e8.zip | |
[WRAPPER] Added some missing function to wrapped libgio-2 (for #2575)
Diffstat (limited to 'src')
| -rw-r--r-- | src/emu/x64printer.c | 4 | ||||
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 4 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedgio2types.h | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 4 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 2 | ||||
| -rw-r--r-- | src/wrapped/wrappedgio2.c | 16 | ||||
| -rw-r--r-- | src/wrapped/wrappedgio2_private.h | 4 |
7 files changed, 34 insertions, 2 deletions
diff --git a/src/emu/x64printer.c b/src/emu/x64printer.c index 733563d1..34168211 100644 --- a/src/emu/x64printer.c +++ b/src/emu/x64printer.c @@ -2861,6 +2861,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIi32 ", %" PRIi64 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8); } else if (w == vFpuipp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); + } else if (w == vFpuipV) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); + } else if (w == vFpuipA) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } else if (w == vFpuuuu) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); } else if (w == vFpuuup) { diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index a2dee26b..364aa8a0 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -1601,6 +1601,8 @@ #() vFpuiip #() vFpuill #() vFpuipp +#() vFpuipV +#() vFpuipA #() vFpuuuu #() vFpuuup #() vFpuupp @@ -3820,9 +3822,11 @@ wrappedgio2: - vFpippp: - g_async_initable_init_async - vFpuipV: + - g_dbus_method_invocation_return_error - g_simple_async_result_set_error - g_task_return_new_error - vFpuipA: + - g_dbus_method_invocation_return_error_valist - g_simple_async_result_set_error_va - pFLpppV: - g_initable_new diff --git a/src/wrapped/generated/wrappedgio2types.h b/src/wrapped/generated/wrappedgio2types.h index 403ce7eb..c6a01462 100644 --- a/src/wrapped/generated/wrappedgio2types.h +++ b/src/wrapped/generated/wrappedgio2types.h @@ -60,8 +60,10 @@ typedef void (*vFpppppppuippp_t)(void*, void*, void*, void*, void*, void*, void* GO(g_simple_async_result_new_take_error, pFpppp_t) \ GO(g_task_new, pFpppp_t) \ GO(g_async_initable_init_async, vFpippp_t) \ + GO(g_dbus_method_invocation_return_error, vFpuipV_t) \ GO(g_simple_async_result_set_error, vFpuipV_t) \ GO(g_task_return_new_error, vFpuipV_t) \ + GO(g_dbus_method_invocation_return_error_valist, vFpuipA_t) \ GO(g_simple_async_result_set_error_va, vFpuipA_t) \ GO(g_initable_new, pFLpppV_t) \ GO(g_initable_new_valist, pFLpApp_t) \ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 40718c6b..cb3ccc15 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -1630,6 +1630,8 @@ typedef void (*vFpuiil_t)(void*, uint32_t, int32_t, int32_t, intptr_t); typedef void (*vFpuiip_t)(void*, uint32_t, int32_t, int32_t, void*); typedef void (*vFpuill_t)(void*, uint32_t, int32_t, intptr_t, intptr_t); typedef void (*vFpuipp_t)(void*, uint32_t, int32_t, void*, void*); +typedef void (*vFpuipV_t)(void*, uint32_t, int32_t, void*, void*); +typedef void (*vFpuipA_t)(void*, uint32_t, int32_t, void*, void*); typedef void (*vFpuuuu_t)(void*, uint32_t, uint32_t, uint32_t, uint32_t); typedef void (*vFpuuup_t)(void*, uint32_t, uint32_t, uint32_t, void*); typedef void (*vFpuupp_t)(void*, uint32_t, uint32_t, void*, void*); @@ -5131,6 +5133,8 @@ void vFpuiil(x64emu_t *emu, uintptr_t fcn) { vFpuiil_t fn = (vFpuiil_t)fcn; fn(( void vFpuiip(x64emu_t *emu, uintptr_t fcn) { vFpuiip_t fn = (vFpuiip_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } void vFpuill(x64emu_t *emu, uintptr_t fcn) { vFpuill_t fn = (vFpuill_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8); } void vFpuipp(x64emu_t *emu, uintptr_t fcn) { vFpuipp_t fn = (vFpuipp_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void vFpuipV(x64emu_t *emu, uintptr_t fcn) { vFpuipV_t fn = (vFpuipV_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); } +void vFpuipA(x64emu_t *emu, uintptr_t fcn) { vFpuipA_t fn = (vFpuipA_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFpuuuu(x64emu_t *emu, uintptr_t fcn) { vFpuuuu_t fn = (vFpuuuu_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); } void vFpuuup(x64emu_t *emu, uintptr_t fcn) { vFpuuup_t fn = (vFpuuup_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); } void vFpuupp(x64emu_t *emu, uintptr_t fcn) { vFpuupp_t fn = (vFpuupp_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 6c51f036..0797f202 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -1638,6 +1638,8 @@ void vFpuiil(x64emu_t *emu, uintptr_t fnc); void vFpuiip(x64emu_t *emu, uintptr_t fnc); void vFpuill(x64emu_t *emu, uintptr_t fnc); void vFpuipp(x64emu_t *emu, uintptr_t fnc); +void vFpuipV(x64emu_t *emu, uintptr_t fnc); +void vFpuipA(x64emu_t *emu, uintptr_t fnc); void vFpuuuu(x64emu_t *emu, uintptr_t fnc); void vFpuuup(x64emu_t *emu, uintptr_t fnc); void vFpuupp(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped/wrappedgio2.c b/src/wrapped/wrappedgio2.c index ca5ee25e..45c650f1 100644 --- a/src/wrapped/wrappedgio2.c +++ b/src/wrapped/wrappedgio2.c @@ -623,6 +623,22 @@ EXPORT void my_g_input_stream_read_async(x64emu_t* emu, void* stream, void* buff my->g_input_stream_read_async(stream, buffer, count, io_prio, cancel, findGAsyncReadyCallbackFct(f), data); } +EXPORT void my_g_dbus_method_invocation_return_error_valist(x64emu_t* emu, void* invocation, uint32_t domain, int code, void* fmt, x64_va_list_t V) +{ + #ifdef CONVERT_VALIST + CONVERT_VALIST(V); + #else + CREATE_VALIST_FROM_VALIST(V, emu->scratch); + #endif + my->g_dbus_method_invocation_return_error_valist(invocation, domain, code, fmt, VARARGS); +} + +EXPORT void my_g_dbus_method_invocation_return_error(x64emu_t* emu, void* invocation, uint32_t domain, int code, void* fmt, uintptr_t* b) +{ + CREATE_VALIST_FROM_VAARG(b, emu->scratch, 4); + my->g_dbus_method_invocation_return_error(invocation, domain, code, fmt, VARARGS); +} + #define PRE_INIT \ if(BOX64ENV(nogtk)) \ return -1; diff --git a/src/wrapped/wrappedgio2_private.h b/src/wrapped/wrappedgio2_private.h index 33caa31f..f516745c 100644 --- a/src/wrapped/wrappedgio2_private.h +++ b/src/wrapped/wrappedgio2_private.h @@ -458,9 +458,9 @@ GO(g_dbus_method_invocation_get_sender, pFp) GO(g_dbus_method_invocation_get_type, LFv) GO(g_dbus_method_invocation_get_user_data, pFp) GO(g_dbus_method_invocation_return_dbus_error, vFppp) -//GOM(g_dbus_method_invocation_return_error, vFpuipV) +GOM(g_dbus_method_invocation_return_error, vFpuipV) GO(g_dbus_method_invocation_return_error_literal, vFpuip) -//GOM(g_dbus_method_invocation_return_error_valist, vFpuipA) +GOM(g_dbus_method_invocation_return_error_valist, vFpuipA) GO(g_dbus_method_invocation_return_gerror, vFpp) GO(g_dbus_method_invocation_return_value, vFpp) GO(g_dbus_method_invocation_return_value_with_unix_fd_list, vFppp) |