From 29cc8a28c26d1dfab6942b4594b8ca4c7a100836 Mon Sep 17 00:00:00 2001 From: Ali Abdallah <ali.slackware@gmail.com> Date: Thu, 30 Jul 2009 06:45:53 +0000 Subject: [PATCH] * Fix a typo that prevents from getting the correct critical configuration. * Emit a warning and exit normally if failed to register DBus names instead of exiting abnormally so the session will try to restart us. (Old svn revision: 7865) --- ChangeLog | 7 +++++++ NEWS | 1 + src/xfpm-manager.c | 24 +++++++++++++----------- src/xfpm-supply.c | 2 +- 4 files changed, 22 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 75f093d6..e38a2458 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-07-30: Ali aliov@xfce.org + * Fix a typo that prevents from getting the correct + critical configuration. + * Emit a warning and exit normally if failed to register + DBus names instead of exiting abnormally so the session + will try to restart us. + 2009-07-27: Ali aliov@xfce.org * src/xfpm-battery.c don't notify when starting up. * src/xfpm-engine.c fix a typo output message. diff --git a/NEWS b/NEWS index b1c124ab..18771f93 100644 --- a/NEWS +++ b/NEWS @@ -2,3 +2,4 @@ Current ======= - Make it possible to compile without network manager support. - Add never show icon to the system tray configuration (bug #5613). +- Fix a typo that prevents from getting the correct critical configuration (bug #5619). diff --git a/src/xfpm-manager.c b/src/xfpm-manager.c index 70323d62..5c65221b 100644 --- a/src/xfpm-manager.c +++ b/src/xfpm-manager.c @@ -181,20 +181,21 @@ xfpm_manager_quit (XfpmManager *manager) return TRUE; } -static void +static gboolean xfpm_manager_reserve_names (XfpmManager *manager) { - if ( !xfpm_dbus_register_name (dbus_g_connection_get_connection(manager->priv->session_bus), - "org.xfce.PowerManager") ) - { - g_error ("Unable to reserve bus name: Xfce Power Manager\n"); - } - - if (!xfpm_dbus_register_name (dbus_g_connection_get_connection(manager->priv->session_bus), + if ( !xfpm_dbus_register_name (dbus_g_connection_get_connection (manager->priv->session_bus), + "org.xfce.PowerManager") || + !xfpm_dbus_register_name (dbus_g_connection_get_connection (manager->priv->session_bus), "org.freedesktop.PowerManagement") ) { - g_error ("Unable to reserve bus name: PowerManagement\n"); + g_warning ("Unable to reserve bus name: Maybe any already running instance?\n"); + xfpm_session_quit (manager->priv->session); + g_object_unref (G_OBJECT (manager)); + gtk_main_quit (); + return FALSE; } + return TRUE; } XfpmManager * @@ -215,8 +216,9 @@ void xfpm_manager_start (XfpmManager *manager) { gboolean hal_running; - xfpm_manager_reserve_names (manager); - + if ( !xfpm_manager_reserve_names (manager) ) + goto out; + dbus_g_error_domain_register (XFPM_ERROR, NULL, XFPM_TYPE_ERROR); diff --git a/src/xfpm-supply.c b/src/xfpm-supply.c index 4d03acc9..d33a0df0 100644 --- a/src/xfpm-supply.c +++ b/src/xfpm-supply.c @@ -392,7 +392,7 @@ xfpm_supply_handle_primary_critical (XfpmSupply *supply, XfpmBattery *battery) { XfpmShutdownRequest critical_action; - g_object_get (G_OBJECT (supply), + g_object_get (G_OBJECT (supply->priv->conf), CRITICAL_BATT_ACTION_CFG, &critical_action, NULL); -- GitLab