diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2008-05-27 12:17:15 +0000 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2008-05-27 12:17:15 +0000 |
commit | 1ed48482e52554d7bfa1a8edf8239399ae3e1155 (patch) | |
tree | 8c13f561519050812b4f12445a15deaa3fe04741 /gdbus/object.c | |
parent | 40b5cf346c985b629c927c5b2a6d188ccd0966dd (diff) |
Fix broken signal checking for new style API
Diffstat (limited to 'gdbus/object.c')
-rw-r--r-- | gdbus/object.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdbus/object.c b/gdbus/object.c index f5561404..869482a4 100644 --- a/gdbus/object.c +++ b/gdbus/object.c @@ -654,6 +654,7 @@ static gboolean check_signal(DBusConnection *conn, const char *path, { struct generic_data *data = NULL; struct interface_data *iface; + GDBusSignalTable *signal; DBusSignalVTable *sig_data; *args = NULL; @@ -672,6 +673,13 @@ static gboolean check_signal(DBusConnection *conn, const char *path, return FALSE; } + for (signal = iface->signals; signal && signal->name; signal++) { + if (!strcmp(signal->name, name)) { + *args = signal->signature; + break; + } + } + for (sig_data = iface->old_signals; sig_data && sig_data->name; sig_data++) { if (!strcmp(sig_data->name, name)) { *args = sig_data->signature; |