From ddc468228b25b1fe64a4926acdd176fab188d173 Mon Sep 17 00:00:00 2001 From: Crispin Flowerday Date: Sun, 22 Jan 2006 13:09:17 +0000 Subject: Add guards to avoid crashing on exit if system bus isn't running. Fixes 2006-01-22 Crispin Flowerday * src/ephy-dbus.c (ephy_dbus_shutdown): Add guards to avoid crashing on exit if system bus isn't running. Fixes bug #327845 --- src/ephy-dbus.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'src/ephy-dbus.c') diff --git a/src/ephy-dbus.c b/src/ephy-dbus.c index cdef34752..61367f7a5 100644 --- a/src/ephy-dbus.c +++ b/src/ephy-dbus.c @@ -349,15 +349,23 @@ ephy_dbus_shutdown (EphyDbus *dbus) dbus->priv->reconnect_timeout_id = 0; } - dbus_connection_remove_filter - (dbus_g_connection_get_connection (dbus->priv->session_bus), - session_filter_func, dbus); - ephy_dbus_disconnect_bus (dbus->priv->session_bus); - - dbus_connection_remove_filter - (dbus_g_connection_get_connection (dbus->priv->system_bus), - system_filter_func, dbus); - ephy_dbus_disconnect_bus (dbus->priv->system_bus); + if (dbus->priv->session_bus) + { + dbus_connection_remove_filter + (dbus_g_connection_get_connection (dbus->priv->session_bus), + session_filter_func, dbus); + ephy_dbus_disconnect_bus (dbus->priv->session_bus); + dbus->priv->session_bus = NULL; + } + + if (dbus->priv->system_bus) + { + dbus_connection_remove_filter + (dbus_g_connection_get_connection (dbus->priv->system_bus), + system_filter_func, dbus); + ephy_dbus_disconnect_bus (dbus->priv->system_bus); + dbus->priv->system_bus = NULL; + } } DBusGConnection * -- cgit v1.2.3