From 52ea0f2cbbf30d7652c38ae5ec89e663ea780b5e Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Wed, 26 Mar 2008 10:28:40 -0400 Subject: Set default exit_on_disconnect after registration 2008-03-26 Colin Walters Patch from Scott James Remnant * dbus/dbus-bus.c: Set default exit_on_disconnect after registration with the bus, not before. This ensures that programs which wish to set exit_on_disconnect to FALSE will not be terminated if the bus exits during registration. (FDO Bug #15112) --- ChangeLog | 9 +++++++++ dbus/dbus-bus.c | 12 ++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 96cecd01..5503219a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2008-03-26 Colin Walters + + Patch from Scott James Remnant + + * dbus/dbus-bus.c: Set default exit_on_disconnect after registration with + the bus, not before. This ensures that programs which wish to set + exit_on_disconnect to FALSE will not be terminated if the bus exits + during registration. (FDO Bug #15112) + 2008-03-04 John (J5) Palmieri * fix broken poll on Mac OSX - build patch by Benjamin Reed diff --git a/dbus/dbus-bus.c b/dbus/dbus-bus.c index c7f43e8c..e159dae7 100644 --- a/dbus/dbus-bus.c +++ b/dbus/dbus-bus.c @@ -436,12 +436,6 @@ internal_bus_get (DBusBusType type, return NULL; } - /* By default we're bound to the lifecycle of - * the message bus. - */ - dbus_connection_set_exit_on_disconnect (connection, - TRUE); - if (!dbus_bus_register (connection, error)) { _DBUS_ASSERT_ERROR_IS_SET (error); @@ -461,6 +455,12 @@ internal_bus_get (DBusBusType type, bus_connections[type] = connection; } + /* By default we're bound to the lifecycle of + * the message bus. + */ + dbus_connection_set_exit_on_disconnect (connection, + TRUE); + _DBUS_LOCK (bus_datas); bd = ensure_bus_data (connection); _dbus_assert (bd != NULL); /* it should have been created on -- cgit