1
Description: create a new proxy by name, and not by name
2
owner. Also, don't try to reconnect in the callback. This prevents
3
screen locking failure when gnome-screensaver gets respawned by D-Bus.
4
Author: Marc Deslauriers <marc.deslauriers@ubuntu.com>
6
diff -Nur gnome-power-manager-2.29.1/src/egg-dbus-proxy.c gnome-power-manager-2.29.1.new/src/egg-dbus-proxy.c
7
--- gnome-power-manager-2.29.1/src/egg-dbus-proxy.c 2009-10-15 02:44:34.000000000 -0700
8
+++ gnome-power-manager-2.29.1.new/src/egg-dbus-proxy.c 2010-02-04 08:22:34.000000000 -0800
11
egg_dbus_proxy_connect (EggDbusProxy *proxy)
13
- GError *error = NULL;
15
g_return_val_if_fail (EGG_IS_DBUS_PROXY (proxy), FALSE);
17
/* are already connected? */
22
- proxy->priv->proxy = dbus_g_proxy_new_for_name_owner (proxy->priv->connection,
23
- proxy->priv->service,
25
- proxy->priv->interface,
27
- /* check for any possible error */
29
- egg_warning ("DBUS error: %s", error->message);
30
- g_error_free (error);
31
- proxy->priv->proxy = NULL;
33
+ proxy->priv->proxy = dbus_g_proxy_new_for_name (proxy->priv->connection,
34
+ proxy->priv->service,
36
+ proxy->priv->interface);
38
/* shouldn't be, but make sure proxy valid */
39
if (proxy->priv->proxy == NULL) {
41
dbus_monitor_connection_cb (EggDbusMonitor *monitor, gboolean status, EggDbusProxy *proxy)
43
g_return_if_fail (EGG_IS_DBUS_PROXY (proxy));
44
- if (proxy->priv->assigned == FALSE)
47
- egg_dbus_proxy_connect (proxy);
49
- egg_dbus_proxy_disconnect (proxy);