Mercurial > emacs
changeset 111251:2dcdfeb8d47c
* dbusbind.c (Fdbus_call_method_asynchronously)
(Fdbus_register_signal, Fdbus_register_method): Check, whether
`dbus-registered-objects-table' is initialized.
Must not be synchronized with the trunk.
author | Michael Albinus <michael.albinus@gmx.de> |
---|---|
date | Mon, 25 Oct 2010 13:46:21 +0200 |
parents | bd94f8980f47 |
children | c430a68b7083 |
files | src/ChangeLog src/dbusbind.c |
diffstat | 2 files changed, 18 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Sun Oct 24 17:05:11 2010 -0400 +++ b/src/ChangeLog Mon Oct 25 13:46:21 2010 +0200 @@ -1,3 +1,9 @@ +2010-10-25 Michael Albinus <michael.albinus@gmx.de> + + * dbusbind.c (Fdbus_call_method_asynchronously) + (Fdbus_register_signal, Fdbus_register_method): Check, whether + `dbus-registered-objects-table' is initialized. + 2010-10-24 Chong Yidong <cyd@stupidchicken.com> * xterm.c (x_connection_closed): Kill Emacs unconditionally.
--- a/src/dbusbind.c Sun Oct 24 17:05:11 2010 -0400 +++ b/src/dbusbind.c Mon Oct 25 13:46:21 2010 +0200 @@ -1175,6 +1175,10 @@ SDATA (interface), SDATA (method)); + /* Check dbus-registered-objects-table. */ + if (!HASH_TABLE_P (Vdbus_registered_objects_table)) + XD_SIGNAL1 (build_string ("dbus.el is not loaded")); + /* Open a connection to the bus. */ connection = xd_initialize (bus); @@ -1863,6 +1867,10 @@ wrong_type_argument (intern ("functionp"), handler); GCPRO6 (bus, service, path, interface, signal, handler); + /* Check dbus-registered-objects-table. */ + if (!HASH_TABLE_P (Vdbus_registered_objects_table)) + XD_SIGNAL1 (build_string ("dbus.el is not loaded")); + /* Retrieve unique name of service. If service is a known name, we will register for the corresponding unique name, if any. Signals are sent always with the unique name as sender. Note: the unique @@ -1976,6 +1984,10 @@ /* TODO: We must check for a valid service name, otherwise there is a segmentation fault. */ + /* Check dbus-registered-objects-table. */ + if (!HASH_TABLE_P (Vdbus_registered_objects_table)) + XD_SIGNAL1 (build_string ("dbus.el is not loaded")); + /* Open a connection to the bus. */ connection = xd_initialize (bus);