about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2023-07-10 13:55:30 +0200
committerptitSeb <sebastien.chev@gmail.com>2023-07-10 13:55:30 +0200
commita6b231ce56243972c53b2b88291b4210870f6343 (patch)
treee64f15457ce19775e8998ce570fe7550a6937107 /src
parent0862e4995c8671ec5d73b77623561bb9859bc092 (diff)
downloadbox64-a6b231ce56243972c53b2b88291b4210870f6343.tar.gz
box64-a6b231ce56243972c53b2b88291b4210870f6343.zip
Added one more function to wrapped libdbus
Diffstat (limited to 'src')
-rw-r--r--src/wrapped/generated/functions_list.txt1
-rw-r--r--src/wrapped/generated/wrappeddbustypes.h1
-rwxr-xr-xsrc/wrapped/wrappeddbus.c16
-rwxr-xr-xsrc/wrapped/wrappeddbus_private.h2
4 files changed, 19 insertions, 1 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index 7635db84..43e3f182 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -2965,6 +2965,7 @@ wrappeddbus:
   - dbus_message_get_args_valist
 - iFpppp:
   - dbus_connection_add_filter
+  - dbus_connection_register_fallback
   - dbus_pending_call_set_notify
 - iFppppp:
   - dbus_connection_try_register_fallback
diff --git a/src/wrapped/generated/wrappeddbustypes.h b/src/wrapped/generated/wrappeddbustypes.h
index 83ea5b82..057ca88d 100644
--- a/src/wrapped/generated/wrappeddbustypes.h
+++ b/src/wrapped/generated/wrappeddbustypes.h
@@ -38,6 +38,7 @@ typedef int32_t (*iFpppppp_t)(void*, void*, void*, void*, void*, void*);
 	GO(dbus_message_get_args, iFppip_t) \
 	GO(dbus_message_get_args_valist, iFppiA_t) \
 	GO(dbus_connection_add_filter, iFpppp_t) \
+	GO(dbus_connection_register_fallback, iFpppp_t) \
 	GO(dbus_pending_call_set_notify, iFpppp_t) \
 	GO(dbus_connection_try_register_fallback, iFppppp_t) \
 	GO(dbus_connection_try_register_object_path, iFppppp_t) \
diff --git a/src/wrapped/wrappeddbus.c b/src/wrapped/wrappeddbus.c
index 2f7fdcd4..7f040916 100755
--- a/src/wrapped/wrappeddbus.c
+++ b/src/wrapped/wrappeddbus.c
@@ -560,6 +560,22 @@ EXPORT int my_dbus_connection_try_register_object_path(x64emu_t* emu, void* conn
     return my->dbus_connection_try_register_object_path(connection, path, vtable?&vt:NULL, data, error);
 }
 
+EXPORT int my_dbus_connection_register_fallback(x64emu_t* emu, void* connection, void* path, my_DBusObjectPathVTable_t* vtable, void* data)
+{
+    (void)emu;
+    my_DBusObjectPathVTable_t vt = {0};
+    if(vtable) {
+        vt.unregister_function = findDBusObjectPathUnregisterFunctionFct(vtable->unregister_function);
+        vt.message_function = findDBusObjectPathMessageFunctionFct(vtable->message_function);
+        vt.pad1 = finddbus_internal_padFct(vtable->pad1);
+        vt.pad2 = finddbus_internal_padFct(vtable->pad2);
+        vt.pad3 = finddbus_internal_padFct(vtable->pad3);
+        vt.pad4 = finddbus_internal_padFct(vtable->pad4);
+    }
+
+    return my->dbus_connection_register_fallback(connection, path, vtable?&vt:NULL, data);
+}
+
 EXPORT int my_dbus_connection_set_data(x64emu_t* emu, void* connection, int slot, void* data, void* free_func)
 {
     (void)emu;
diff --git a/src/wrapped/wrappeddbus_private.h b/src/wrapped/wrappeddbus_private.h
index 5c546fd2..ccbe2a9b 100755
--- a/src/wrapped/wrappeddbus_private.h
+++ b/src/wrapped/wrappeddbus_private.h
@@ -54,7 +54,7 @@ GO(dbus_connection_preallocate_send, pFp)
 GO(dbus_connection_read_write, iFpi)
 GO(dbus_connection_read_write_dispatch, iFpi)
 GO(dbus_connection_ref, pFp)
-//GO(dbus_connection_register_fallback, 
+GOM(dbus_connection_register_fallback, iFEpppp)
 //GO(dbus_connection_register_object_path, 
 GOM(dbus_connection_remove_filter, vFEppp)
 GO(dbus_connection_return_message, vFpp)