From 052ae076539ff8205f305a0e93de68d9d265942a Mon Sep 17 00:00:00 2001 From: "sanghyeok.oh" Date: Wed, 14 Aug 2019 16:52:22 +0900 Subject: [PATCH] libgdbus: modified to support unicast signal Change-Id: I36085cf3d0f4e8e0fd3d78abc259b758112e9720 Signed-off-by: sanghyeok.oh --- src/libgdbus/dbus-system.c | 33 +++------------------------------ src/libgdbus/dbus-system.h | 3 +-- 2 files changed, 4 insertions(+), 32 deletions(-) diff --git a/src/libgdbus/dbus-system.c b/src/libgdbus/dbus-system.c index 7ed53ba..3e325e1 100644 --- a/src/libgdbus/dbus-system.c +++ b/src/libgdbus/dbus-system.c @@ -1813,35 +1813,8 @@ static GVariant* _append_variant(const char *signature, const char *param[]) return ret; } -int dbus_handle_broadcast_dbus_signal(const char *path, - const char *iface, - const char *name, - const char *signature, - const char *param[]) -{ - dbus_handle_s *dh = NULL; - GError *err = NULL; - gboolean ret = 0; - GVariant *var = NULL; - - dh = _dbus_handle_get_default_connection(); - if (!dh) { - _E("failed to get default connection, bustype:%d", (int)dbus_handle_get_default_bus_type()); - return -1; - } - - if (signature && param) - var = _append_variant(signature, param); - ret = g_dbus_connection_emit_signal(dh->conn, NULL, path, iface, name, var, &err); - if (err) { - _E("%d %s\n", ret, err ? err->message : NULL); - g_error_free(err); - } - - return ret; -} - -int dbus_handle_broadcast_dbus_signal_var(const char *path, +int dbus_handle_broadcast_dbus_signal(const char *dest, + const char *path, const char *iface, const char *name, GVariant *param) @@ -1856,7 +1829,7 @@ int dbus_handle_broadcast_dbus_signal_var(const char *path, return -1; } - ret = g_dbus_connection_emit_signal(dh->conn, NULL, path, iface, name, param, &err); + ret = g_dbus_connection_emit_signal(dh->conn, dest, path, iface, name, param, &err); if (err) { _E("%d %s\n", ret, err ? err->message : NULL); g_error_free(err); diff --git a/src/libgdbus/dbus-system.h b/src/libgdbus/dbus-system.h index 4c260e7..3478605 100644 --- a/src/libgdbus/dbus-system.h +++ b/src/libgdbus/dbus-system.h @@ -501,8 +501,7 @@ int dbus_handle_signal_ctx_add_timeout(sig_ctx *ctx, int timeout); GVariant *dbus_handle_make_simple_array(const char *sig, int *param); -int dbus_handle_broadcast_dbus_signal(const char *path, const char *iface, const char *name, const char *signature, const char *param[]); -int dbus_handle_broadcast_dbus_signal_var(const char *path, const char *iface, const char *name, GVariant *param); +int dbus_handle_broadcast_dbus_signal(const char *dest, const char *path, const char *iface, const char *name, GVariant *param); typedef struct { -- 2.7.4