summaryrefslogtreecommitdiffstats
path: root/bus/driver.c
diff options
context:
space:
mode:
authorOlivier Andrieu <oliv__a@users.sourceforge.net>2004-09-17 09:14:49 +0000
committerOlivier Andrieu <oliv__a@users.sourceforge.net>2004-09-17 09:14:49 +0000
commit1658c8afe59166c9aa77549a3ac6a2e389327638 (patch)
tree98604cf93199ba1cf14171453592f6f7fcdd0778 /bus/driver.c
parent31b1e75289c9a2a830e458a1790f43dff443afdb (diff)
* dbus/dbus-sysdeps.c (_dbus_user_at_console): fix memleak in OOM.
* doc/busconfig.dtd: update the DTD for the at_console attribute. * bus/driver.c (bus_driver_handle_hello): correctly handle Hello messages after the first one (bug #1389). * bus/dispatch.c (check_double_hello_message): add a test case for the double hello message bug. (check_existent_service_activation): fix check of spawning error.
Diffstat (limited to 'bus/driver.c')
-rw-r--r--bus/driver.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/bus/driver.c b/bus/driver.c
index 90659cd2..39d8b126 100644
--- a/bus/driver.c
+++ b/bus/driver.c
@@ -278,6 +278,14 @@ bus_driver_handle_hello (DBusConnection *connection,
_DBUS_ASSERT_ERROR_IS_CLEAR (error);
+ if (bus_connection_is_active (connection))
+ {
+ /* We already handled an Hello message for this connection. */
+ dbus_set_error (error, DBUS_ERROR_FAILED,
+ "Already handled an Hello message");
+ return FALSE;
+ }
+
/* Note that when these limits are exceeded we don't disconnect the
* connection; we just sort of leave it hanging there until it times
* out or disconnects itself or is dropped due to the max number of