diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2022-01-23 22:22:40 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2022-01-23 22:22:40 +0100 |
| commit | ca3247d21affcd2c022ff010a523ee9d39cc8b6d (patch) | |
| tree | 54ed0dcb93a6aeb9e80d48f927a6b3ef8f5f5520 /src | |
| parent | 511a7d24488b64f9e8aa7ed98ed26425c4b1f06e (diff) | |
| download | box64-ca3247d21affcd2c022ff010a523ee9d39cc8b6d.tar.gz box64-ca3247d21affcd2c022ff010a523ee9d39cc8b6d.zip | |
Wrapped g_initable_new and g_initable_new_valist from libgio2
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 11 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedgio2types.h | 8 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 11 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 5 | ||||
| -rwxr-xr-x | src/wrapped/wrappedgio2.c | 89 | ||||
| -rwxr-xr-x | src/wrapped/wrappedgio2_private.h | 8 |
6 files changed, 59 insertions, 73 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 8352de4a..70264ae6 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -1204,6 +1204,7 @@ #() pFpuuip #() pFpuuWW #() pFpuuup +#() pFpuppp #() pFpUdii #() pFpdddd #() pFplppp @@ -1443,6 +1444,8 @@ #() pFEpppLp #() pFEppppi #() pFEppppp +#() pFEppppV +#() pFEppApp #() pFiiiiii #() pFiCiiCi #() pFdddddd @@ -1661,7 +1664,7 @@ #() pFppppppp #() vFEiippppV #() vFEiupippp -#() vFEippippp +#() vFEipAippp #() vFEppipppp #() vFEpppuipV #() vFEpppppuu @@ -2200,13 +2203,17 @@ wrappedgio2: - g_simple_async_result_set_error - vFppipA: - g_simple_async_result_set_error_va +- pFppppV: + - g_initable_new +- pFppApp: + - g_initable_new_valist - vFpipppp: - g_dbus_connection_new_for_address - vFiippppV: - g_async_initable_new_async - vFiupippp: - g_async_initable_newv_async -- vFippippp: +- vFipAippp: - g_async_initable_new_valist_async - vFppipppp: - g_dbus_connection_new diff --git a/src/wrapped/generated/wrappedgio2types.h b/src/wrapped/generated/wrappedgio2types.h index 54be1037..1448cd34 100644 --- a/src/wrapped/generated/wrappedgio2types.h +++ b/src/wrapped/generated/wrappedgio2types.h @@ -21,10 +21,12 @@ typedef void* (*pFpppp_t)(void*, void*, void*, void*); typedef void (*vFpippp_t)(void*, int64_t, void*, void*, void*); typedef void (*vFppipV_t)(void*, void*, int64_t, void*, ...); typedef void (*vFppipA_t)(void*, void*, int64_t, void*, va_list); +typedef void* (*pFppppV_t)(void*, void*, void*, void*, ...); +typedef void* (*pFppApp_t)(void*, void*, va_list, void*, void*); typedef void (*vFpipppp_t)(void*, int64_t, void*, void*, void*, void*); typedef void (*vFiippppV_t)(int64_t, int64_t, void*, void*, void*, void*, ...); typedef void (*vFiupippp_t)(int64_t, uint64_t, void*, int64_t, void*, void*, void*); -typedef void (*vFippippp_t)(int64_t, void*, void*, int64_t, void*, void*, void*); +typedef void (*vFipAippp_t)(int64_t, void*, va_list, int64_t, void*, void*, void*); typedef void (*vFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void*); typedef void (*vFpppuipV_t)(void*, void*, void*, uint64_t, int64_t, void*, ...); typedef uint64_t (*uFipipppp_t)(int64_t, void*, int64_t, void*, void*, void*, void*); @@ -57,10 +59,12 @@ typedef void (*vFpppppppiippp_t)(void*, void*, void*, void*, void*, void*, void* GO(g_async_initable_init_async, vFpippp_t) \ GO(g_simple_async_result_set_error, vFppipV_t) \ GO(g_simple_async_result_set_error_va, vFppipA_t) \ + GO(g_initable_new, pFppppV_t) \ + GO(g_initable_new_valist, pFppApp_t) \ GO(g_dbus_connection_new_for_address, vFpipppp_t) \ GO(g_async_initable_new_async, vFiippppV_t) \ GO(g_async_initable_newv_async, vFiupippp_t) \ - GO(g_async_initable_new_valist_async, vFippippp_t) \ + GO(g_async_initable_new_valist_async, vFipAippp_t) \ GO(g_dbus_connection_new, vFppipppp_t) \ GO(g_simple_async_report_error_in_idle, vFpppuipV_t) \ GO(g_bus_watch_name, uFipipppp_t) \ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 969798c4..a70f0051 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -1238,6 +1238,7 @@ typedef void* (*pFpuWWW_t)(void*, uint64_t, uint16_t, uint16_t, uint16_t); typedef void* (*pFpuuip_t)(void*, uint64_t, uint64_t, int64_t, void*); typedef void* (*pFpuuWW_t)(void*, uint64_t, uint64_t, uint16_t, uint16_t); typedef void* (*pFpuuup_t)(void*, uint64_t, uint64_t, uint64_t, void*); +typedef void* (*pFpuppp_t)(void*, uint64_t, void*, void*, void*); typedef void* (*pFpUdii_t)(void*, uint64_t, double, int64_t, int64_t); typedef void* (*pFpdddd_t)(void*, double, double, double, double); typedef void* (*pFplppp_t)(void*, intptr_t, void*, void*, void*); @@ -1477,6 +1478,8 @@ typedef void* (*pFEppLLp_t)(x64emu_t*, void*, void*, uintptr_t, uintptr_t, void* typedef void* (*pFEpppLp_t)(x64emu_t*, void*, void*, void*, uintptr_t, void*); typedef void* (*pFEppppi_t)(x64emu_t*, void*, void*, void*, void*, int64_t); typedef void* (*pFEppppp_t)(x64emu_t*, void*, void*, void*, void*, void*); +typedef void* (*pFEppppV_t)(x64emu_t*, void*, void*, void*, void*, void*); +typedef void* (*pFEppApp_t)(x64emu_t*, void*, void*, void*, void*, void*); typedef void* (*pFiiiiii_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void* (*pFiCiiCi_t)(int64_t, uint8_t, int64_t, int64_t, uint8_t, int64_t); typedef void* (*pFdddddd_t)(double, double, double, double, double, double); @@ -1695,7 +1698,7 @@ typedef void* (*pFppppppi_t)(void*, void*, void*, void*, void*, void*, int64_t); typedef void* (*pFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); typedef void (*vFEiippppV_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*, void*, void*); typedef void (*vFEiupippp_t)(x64emu_t*, int64_t, uint64_t, void*, int64_t, void*, void*, void*); -typedef void (*vFEippippp_t)(x64emu_t*, int64_t, void*, void*, int64_t, void*, void*, void*); +typedef void (*vFEipAippp_t)(x64emu_t*, int64_t, void*, void*, int64_t, void*, void*, void*); typedef void (*vFEppipppp_t)(x64emu_t*, void*, void*, int64_t, void*, void*, void*, void*); typedef void (*vFEpppuipV_t)(x64emu_t*, void*, void*, void*, uint64_t, int64_t, void*, void*); typedef void (*vFEpppppuu_t)(x64emu_t*, void*, void*, void*, void*, void*, uint64_t, uint64_t); @@ -3274,6 +3277,7 @@ void pFpuWWW(x64emu_t *emu, uintptr_t fcn) { pFpuWWW_t fn = (pFpuWWW_t)fcn; R_RA void pFpuuip(x64emu_t *emu, uintptr_t fcn) { pFpuuip_t fn = (pFpuuip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } void pFpuuWW(x64emu_t *emu, uintptr_t fcn) { pFpuuWW_t fn = (pFpuuWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8); } void pFpuuup(x64emu_t *emu, uintptr_t fcn) { pFpuuup_t fn = (pFpuuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } +void pFpuppp(x64emu_t *emu, uintptr_t fcn) { pFpuppp_t fn = (pFpuppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFpUdii(x64emu_t *emu, uintptr_t fcn) { pFpUdii_t fn = (pFpUdii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, emu->xmm[0].d[0], (int64_t)R_RDX, (int64_t)R_RCX); } void pFpdddd(x64emu_t *emu, uintptr_t fcn) { pFpdddd_t fn = (pFpdddd_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0]); } void pFplppp(x64emu_t *emu, uintptr_t fcn) { pFplppp_t fn = (pFplppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } @@ -3513,6 +3517,8 @@ void pFEppLLp(x64emu_t *emu, uintptr_t fcn) { pFEppLLp_t fn = (pFEppLLp_t)fcn; R void pFEpppLp(x64emu_t *emu, uintptr_t fcn) { pFEpppLp_t fn = (pFEpppLp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8); } void pFEppppi(x64emu_t *emu, uintptr_t fcn) { pFEppppi_t fn = (pFEppppi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void pFEppppp(x64emu_t *emu, uintptr_t fcn) { pFEppppp_t fn = (pFEppppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } +void pFEppppV(x64emu_t *emu, uintptr_t fcn) { pFEppppV_t fn = (pFEppppV_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); } +void pFEppApp(x64emu_t *emu, uintptr_t fcn) { pFEppApp_t fn = (pFEppApp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFiiiiii(x64emu_t *emu, uintptr_t fcn) { pFiiiiii_t fn = (pFiiiiii_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void pFiCiiCi(x64emu_t *emu, uintptr_t fcn) { pFiCiiCi_t fn = (pFiCiiCi_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (uint8_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint8_t)R_R8, (int64_t)R_R9); } void pFdddddd(x64emu_t *emu, uintptr_t fcn) { pFdddddd_t fn = (pFdddddd_t)fcn; R_RAX=(uintptr_t)fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0], emu->xmm[5].d[0]); } @@ -3731,7 +3737,7 @@ void pFppppppi(x64emu_t *emu, uintptr_t fcn) { pFppppppi_t fn = (pFppppppi_t)fcn void pFppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppp_t fn = (pFppppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void vFEiippppV(x64emu_t *emu, uintptr_t fcn) { vFEiippppV_t fn = (vFEiippppV_t)fcn; fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, (void*)(R_RSP + 8)); } void vFEiupippp(x64emu_t *emu, uintptr_t fcn) { vFEiupippp_t fn = (vFEiupippp_t)fcn; fn(emu, (int64_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } -void vFEippippp(x64emu_t *emu, uintptr_t fcn) { vFEippippp_t fn = (vFEippippp_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void vFEipAippp(x64emu_t *emu, uintptr_t fcn) { vFEipAippp_t fn = (vFEipAippp_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void vFEppipppp(x64emu_t *emu, uintptr_t fcn) { vFEppipppp_t fn = (vFEppipppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void vFEpppuipV(x64emu_t *emu, uintptr_t fcn) { vFEpppuipV_t fn = (vFEpppuipV_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, (void*)(R_RSP + 8)); } void vFEpppppuu(x64emu_t *emu, uintptr_t fcn) { vFEpppppuu_t fn = (vFEpppppuu_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } @@ -5138,6 +5144,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFpuuip) return 1; if (fun == &pFpuuWW) return 1; if (fun == &pFpuuup) return 1; + if (fun == &pFpuppp) return 1; if (fun == &pFpUdii) return 2; if (fun == &pFpdddd) return 5; if (fun == &pFplppp) return 1; diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 0f71eb99..7943a050 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -1237,6 +1237,7 @@ void pFpuWWW(x64emu_t *emu, uintptr_t fnc); void pFpuuip(x64emu_t *emu, uintptr_t fnc); void pFpuuWW(x64emu_t *emu, uintptr_t fnc); void pFpuuup(x64emu_t *emu, uintptr_t fnc); +void pFpuppp(x64emu_t *emu, uintptr_t fnc); void pFpUdii(x64emu_t *emu, uintptr_t fnc); void pFpdddd(x64emu_t *emu, uintptr_t fnc); void pFplppp(x64emu_t *emu, uintptr_t fnc); @@ -1476,6 +1477,8 @@ void pFEppLLp(x64emu_t *emu, uintptr_t fnc); void pFEpppLp(x64emu_t *emu, uintptr_t fnc); void pFEppppi(x64emu_t *emu, uintptr_t fnc); void pFEppppp(x64emu_t *emu, uintptr_t fnc); +void pFEppppV(x64emu_t *emu, uintptr_t fnc); +void pFEppApp(x64emu_t *emu, uintptr_t fnc); void pFiiiiii(x64emu_t *emu, uintptr_t fnc); void pFiCiiCi(x64emu_t *emu, uintptr_t fnc); void pFdddddd(x64emu_t *emu, uintptr_t fnc); @@ -1694,7 +1697,7 @@ void pFppppppi(x64emu_t *emu, uintptr_t fnc); void pFppppppp(x64emu_t *emu, uintptr_t fnc); void vFEiippppV(x64emu_t *emu, uintptr_t fnc); void vFEiupippp(x64emu_t *emu, uintptr_t fnc); -void vFEippippp(x64emu_t *emu, uintptr_t fnc); +void vFEipAippp(x64emu_t *emu, uintptr_t fnc); void vFEppipppp(x64emu_t *emu, uintptr_t fnc); void vFEpppuipV(x64emu_t *emu, uintptr_t fnc); void vFEpppppuu(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped/wrappedgio2.c b/src/wrapped/wrappedgio2.c index 43e58573..a9c89080 100755 --- a/src/wrapped/wrappedgio2.c +++ b/src/wrapped/wrappedgio2.c @@ -24,69 +24,10 @@ const char* gio2Name = "libgio-2.0.so.0"; static char* libname = NULL; -typedef void (*vFppp_t) (void*, void*, void*); -typedef void (*vFppip_t) (void*, void*, int, void*); -typedef void (*vFippp_t) (int, void*, void*, void*); -typedef void* (*pFpppp_t) (void*, void*, void*, void*); -typedef void (*vFpppp_t) (void*, void*, void*, void*); -typedef uint32_t(*uFpppp_t) (void*, void*, void*, void*); -typedef unsigned long (*LFpppp_t) (void*, void*, void*, void*); -typedef void (*vFpippp_t) (void*, int, void*, void*, void*); -typedef void (*vFpipppp_t) (void*, int, void*, void*, void*, void*); -typedef void* (*vFippippp_t) (int, void*, void*, int, void*, void*, void*); -typedef uint32_t(*uFipipppp_t) (int, void*, int, void*, void*, void*, void*); -typedef uint32_t(*uFppipppp_t) (void*, void*, int, void*, void*, void*, void*); -typedef void (*vFppipppp_t) (void*, void*, int, void*, void*, void*, void*); -typedef void (*vFiupippp_t) (int, uint32_t, void*, int, void*, void*, void*); -typedef void (*vFpppuipV_t) (void*, void*, void*, uint32_t, int, void*, ...); -typedef void* (*pFpppuipV_t) (void*, void*, void*, uint32_t, int, void*, ...); -typedef uint32_t(*uFppppppp_t) (void*, void*, void*, void*, void*, void*, void*); -typedef void* (*vFLpAippp_t) (size_t, void*, va_list, int, void*, void*, void*); -typedef void (*vFppiipppp_t) (void*, void*, int, int, void*, void*, void*, void*); -typedef void (*vFpppiippp_t) (void*, void*, void*, int, int, void*, void*, void*); -typedef uint32_t(*uFLpippppp_t) (size_t, void*, int, void*, void*, void*, void*, void*); -typedef void (*vFpppiipppp_t) (void*, void*, void*, int, int, void*, void*, void*, void*); -typedef void (*vFiippppppp_t) (int, int, void*, void*, void*, void*, void*, void*, void*); -typedef void (*vFpippppppp_t) (void*, int, void*, void*, void*, void*, void*, void*, void*); -typedef void* (*pFLippppppp_t) (size_t, int, void*, void*, void*, void*, void*, void*, void*); -typedef uint32_t(*uFppppppippp_t) (void*, void*, void*, void*, void*, void*, int, void*, void*, void*); -typedef void (*vFpppppppiippp_t) (void*, void*, void*, void*, void*, void*, void*, int, int, void*, void*, void*); -typedef void (*vFppipA_t) (void*, void*, int, void*, va_list); -#define SUPER() \ - GO(g_dbus_proxy_new, vFpippppppp_t) \ - GO(g_dbus_proxy_new_for_bus, vFiippppppp_t) \ - GO(g_dbus_proxy_call, vFpppiippp_t) \ - GO(g_dbus_proxy_call_with_unix_fd_list, vFpppiipppp_t) \ - GO(g_dbus_object_manager_client_new_for_bus_sync, pFLippppppp_t) \ - GO(g_simple_async_result_new, pFpppp_t) \ - GO(g_simple_async_result_new_error, pFpppuipV_t)\ - GO(g_simple_async_result_new_from_error, pFpppp_t) \ - GO(g_simple_async_result_new_take_error, pFpppp_t) \ - GO(g_simple_async_result_set_op_res_gpointer, vFppp_t) \ - GO(g_simple_async_result_run_in_thread, vFppip_t) \ - GO(g_simple_async_report_error_in_idle, vFpppuipV_t) \ - GO(g_simple_async_report_gerror_in_idle, vFpppp_t) \ - GO(g_simple_async_report_take_gerror_in_idle, vFpppp_t) \ - GO(g_cancellable_connect, LFpppp_t) \ - GO(g_async_initable_init_async, vFpippp_t) \ - GO(g_async_initable_new_valist_async, vFLpAippp_t) \ - GO(g_async_initable_newv_async, vFiupippp_t) \ - GO(g_bus_get, vFippp_t) \ - GO(g_dbus_connection_new, vFppipppp_t) \ - GO(g_dbus_connection_new_for_address, vFpipppp_t) \ - GO(g_dbus_connection_close, vFpppp_t) \ - GO(g_dbus_connection_flush, vFpppp_t) \ - GO(g_dbus_connection_call, vFpppppppiippp_t) \ - GO(g_dbus_connection_signal_subscribe, uFppppppippp_t) \ - GO(g_dbus_connection_send_message_with_reply, vFppiipppp_t) \ - GO(g_dbus_connection_add_filter, uFpppp_t) \ - GO(g_dbus_connection_register_object, uFppppppp_t) \ - GO(g_bus_watch_name, uFipipppp_t) \ - GO(g_bus_watch_name_on_connection, uFppipppp_t) \ - GO(g_bus_own_name, uFLpippppp_t) \ - GO(g_bus_own_name_on_connection, uFppipppp_t) \ - GO(g_simple_async_result_set_error_va, vFppipA_t) \ +#define ADDED_FUNCTIONS() \ + +#include "wrappedgio2types.h" typedef struct gio2_my_s { @@ -750,6 +691,30 @@ EXPORT void my_g_simple_async_result_set_error(x64emu_t* emu, void* simple, void my->g_simple_async_result_set_error_va(simple, domain, code, fmt, VARARGS); } +EXPORT void* my_g_initable_new(x64emu_t* emu, void* type, void* cancel, void* err, void* first, uintptr_t* b) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + myStackAlign(emu, first, b, emu->scratch, R_EAX, 4); + PREPARE_VALIST; + return my->g_initable_new_valist(type, first, VARARGS, cancel, err); +} + +EXPORT void* my_g_initable_new_valist(x64emu_t* emu, void* type, void* first, x64_va_list_t V, void* cancel, void* err) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + #ifdef CONVERT_VALIST + CONVERT_VALIST(V); + #else + CREATE_VALIST_FROM_VALIST(V, emu->scratch); + #endif + return my->g_initable_new_valist(type, first, VARARGS, cancel, err); +} + + #define PRE_INIT \ if(box64_nogtk) \ return -1; diff --git a/src/wrapped/wrappedgio2_private.h b/src/wrapped/wrappedgio2_private.h index ef5bff3e..cdeebeb7 100755 --- a/src/wrapped/wrappedgio2_private.h +++ b/src/wrapped/wrappedgio2_private.h @@ -132,7 +132,7 @@ GOM(g_async_initable_init_async, vFEpippp) GO(g_async_initable_init_finish, iFppp) GOM(g_async_initable_new_async, vFEiippppV) GO(g_async_initable_new_finish, pFppp) -GOM(g_async_initable_new_valist_async, vFEippippp) +GOM(g_async_initable_new_valist_async, vFEipAippp) GOM(g_async_initable_newv_async, vFEiupippp) //GO(g_async_result_get_source_object, //GO(g_async_result_get_type, @@ -940,9 +940,9 @@ GO(g_icon_to_string, pFp) //GO(g_inet_socket_address_new_from_string, GO(g_initable_get_type, LFv) GO(g_initable_init, iFppp) -//GO(g_initable_new, pFippppppppppppppp) // vaarg, should vrap with g_initable_new_valist -GO(g_initable_newv, pFpippp) -//GO(g_initable_new_valist, pFipppp) +GOM(g_initable_new, pFEppppV) +GO(g_initable_newv, pFpuppp) +GOM(g_initable_new_valist, pFEppApp) //GO(g_input_stream_clear_pending, //GO(g_input_stream_close, //GO(g_input_stream_close_async, |