blob: f758a4bcc5df726b2cb0292004821b4b84f782f5 [file] [log] [blame]
Fixes errors such as this in the rootfs generation:
(gconftool-2.real:10095): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead
Upstream-Status: Backport
Signed-off-by: Ross Burton <ross.burton@intel.com>
From b0895e1998ebc83ab030ec0f17c0685439f5b404 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Mon, 15 Apr 2013 09:57:34 -0400
Subject: [PATCH] dbus: Don't spew to console when unable to connect to dbus
daemon
Instead pass the error up for the caller to decide what to do.
This prevent untrappable warning messages from showing up at the
console if gconftool --makefile-install-rule is called.
---
gconf/gconf-dbus.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c
index 5610fcf..048e3ea 100644
--- a/gconf/gconf-dbus.c
+++ b/gconf/gconf-dbus.c
@@ -105,7 +105,7 @@ static GHashTable *engines_by_db = NULL;
static GHashTable *engines_by_address = NULL;
static gboolean dbus_disconnected = FALSE;
-static gboolean ensure_dbus_connection (void);
+static gboolean ensure_dbus_connection (GError **error);
static gboolean ensure_service (gboolean start_if_not_found,
GError **err);
static gboolean ensure_database (GConfEngine *conf,
@@ -383,7 +383,7 @@ gconf_engine_detach (GConfEngine *conf)
}
static gboolean
-ensure_dbus_connection (void)
+ensure_dbus_connection (GError **err)
{
DBusError error;
@@ -392,7 +392,9 @@ ensure_dbus_connection (void)
if (dbus_disconnected)
{
- g_warning ("The connection to DBus was broken. Can't reinitialize it.");
+ g_set_error (err, GCONF_ERROR,
+ GCONF_ERROR_NO_SERVER,
+ "The connection to DBus was broken. Can't reinitialize it.");
return FALSE;
}
@@ -402,7 +404,10 @@ ensure_dbus_connection (void)
if (!global_conn)
{
- g_warning ("Client failed to connect to the D-BUS daemon:\n%s", error.message);
+ g_set_error (err, GCONF_ERROR,
+ GCONF_ERROR_NO_SERVER,
+ "Client failed to connect to the D-BUS daemon:\n%s",
+ error.message);
dbus_error_free (&error);
return FALSE;
@@ -431,13 +436,8 @@ ensure_service (gboolean start_if_not_found,
if (global_conn == NULL)
{
- if (!ensure_dbus_connection ())
- {
- g_set_error (err, GCONF_ERROR,
- GCONF_ERROR_NO_SERVER,
- _("No D-BUS daemon running\n"));
- return FALSE;
- }
+ if (!ensure_dbus_connection (err))
+ return FALSE;
g_assert (global_conn != NULL);
}
@@ -2512,7 +2512,7 @@ gconf_ping_daemon (void)
{
if (global_conn == NULL)
{
- if (!ensure_dbus_connection ())
+ if (!ensure_dbus_connection (NULL))
{
return FALSE;
}
--
1.7.10.4