diff -up gvfs-0.2.3/client/gdaemonvfs.c.dbus-exit gvfs-0.2.3/client/gdaemonvfs.c --- gvfs-0.2.3/client/gdaemonvfs.c.dbus-exit 2008-04-18 21:29:52.000000000 -0400 +++ gvfs-0.2.3/client/gdaemonvfs.c 2008-04-18 21:29:28.000000000 -0400 @@ -298,6 +298,8 @@ g_daemon_vfs_init (GDaemonVfs *vfs) vfs->wrapped_vfs = g_vfs_get_local (); + dbus_connection_set_exit_on_disconnect (vfs->async_bus, FALSE); + _g_dbus_connection_integrate_with_main (vfs->async_bus); modules = g_io_modules_load_all_in_directory (GVFS_MODULE_DIR); diff -up gvfs-0.2.3/hal/hal-pool.c.dbus-exit gvfs-0.2.3/hal/hal-pool.c --- gvfs-0.2.3/hal/hal-pool.c.dbus-exit 2008-04-18 21:27:36.000000000 -0400 +++ gvfs-0.2.3/hal/hal-pool.c 2008-04-18 21:28:05.000000000 -0400 @@ -308,6 +308,8 @@ hal_pool_new (char **cap_only) goto out; } + dbus_connection_set_exit_on_disconnect (dbus_connection, FALSE); + hal_ctx = libhal_ctx_new (); if (hal_ctx == NULL) {