--- GConf-2.24.0/gconf/gconf.c-orig 2008-10-09 22:15:02.462081000 +0000 +++ GConf-2.24.0/gconf/gconf.c 2008-10-09 23:29:29.216373000 +0000 @@ -556,6 +556,7 @@ GConfEngine* gconf_engine_get_default (void) { GConfEngine* conf = NULL; + GError *err = NULL; if (default_engine) conf = default_engine; @@ -572,7 +573,7 @@ gconf_engine_get_default (void) * since we aren't starting if it isn't found, we'll probably * get errors half the time anyway. */ - gconf_engine_connect (conf, FALSE, NULL); + gconf_engine_connect (conf, FALSE, &err); } else conf->refcount += 1; @@ -2233,6 +2234,11 @@ try_to_contact_server (gboolean start_if /* Try to launch server */ server = gconf_activate_server (start_if_not_found, err); + if (server == CORBA_OBJECT_NIL) { + unsetenv ("DBUS_SESSION_BUS_ADDRESS"); + server = gconf_activate_server (start_if_not_found, + err); + } /* Try to ping server, by adding ourselves as a client */ CORBA_exception_init (&ev);