summaryrefslogtreecommitdiff
path: root/gnome-unstable/gnome-settings-daemon/systemd-fallback.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-unstable/gnome-settings-daemon/systemd-fallback.patch')
-rw-r--r--gnome-unstable/gnome-settings-daemon/systemd-fallback.patch118
1 files changed, 56 insertions, 62 deletions
diff --git a/gnome-unstable/gnome-settings-daemon/systemd-fallback.patch b/gnome-unstable/gnome-settings-daemon/systemd-fallback.patch
index 80f3ac4d3..da0496623 100644
--- a/gnome-unstable/gnome-settings-daemon/systemd-fallback.patch
+++ b/gnome-unstable/gnome-settings-daemon/systemd-fallback.patch
@@ -1,7 +1,18 @@
-diff -u -Nr gnome-settings-daemon-3.3.91/configure.ac gnome-settings-daemon-3.3.91-systemd-fallback/configure.ac
---- gnome-settings-daemon-3.3.91/configure.ac 2012-03-05 19:13:16.000000000 +0100
-+++ gnome-settings-daemon-3.3.91-systemd-fallback/configure.ac 2012-03-10 16:20:31.417634553 +0100
-@@ -298,7 +298,7 @@
+commit b9ded09387f0b99ece97baee18595eb9e86a5b9b
+Author: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+Date: Mon Mar 12 01:52:54 2012 +0100
+
+ Fallback to CK if systemd is not available
+
+ Be nice to distributions where systemd is optional. This will select
+ the code path at runtime depending on whether the system was booted
+ using systemd.
+
+diff --git a/configure.ac b/configure.ac
+index 3b4789f..d522852 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -299,7 +299,7 @@ AC_ARG_ENABLE([systemd],
[with_systemd=$enableval],
[with_systemd=no])
if test "$with_systemd" = "yes" ; then
@@ -10,9 +21,10 @@ diff -u -Nr gnome-settings-daemon-3.3.91/configure.ac gnome-settings-daemon-3.3.
AC_DEFINE(HAVE_SYSTEMD, 1, [Define if systemd is used for session tracking])
SESSION_TRACKING=systemd
else
-diff -u -Nr gnome-settings-daemon-3.3.91/gnome-settings-daemon/gnome-settings-session.c gnome-settings-daemon-3.3.91-systemd-fallback/gnome-settings-daemon/gnome-settings-session.c
---- gnome-settings-daemon-3.3.91/gnome-settings-daemon/gnome-settings-session.c 2012-02-01 20:33:14.000000000 +0100
-+++ gnome-settings-daemon-3.3.91-systemd-fallback/gnome-settings-daemon/gnome-settings-session.c 2012-03-10 16:21:35.930442794 +0100
+diff --git a/gnome-settings-daemon/gnome-settings-session.c b/gnome-settings-daemon/gnome-settings-session.c
+index 5786300..83fe21e 100644
+--- a/gnome-settings-daemon/gnome-settings-session.c
++++ b/gnome-settings-daemon/gnome-settings-session.c
@@ -30,6 +30,7 @@
#include "gnome-settings-session.h"
@@ -21,7 +33,7 @@ diff -u -Nr gnome-settings-daemon-3.3.91/gnome-settings-daemon/gnome-settings-se
#include <systemd/sd-login.h>
typedef struct
-@@ -130,10 +131,9 @@
+@@ -130,10 +131,9 @@ struct GnomeSettingsSessionPrivate
{
#ifdef HAVE_SYSTEMD
GSource *sd_source;
@@ -33,7 +45,7 @@ diff -u -Nr gnome-settings-daemon-3.3.91/gnome-settings-daemon/gnome-settings-se
gchar *session_id;
GnomeSettingsSessionState state;
};
-@@ -237,7 +237,7 @@
+@@ -237,7 +237,7 @@ sessions_changed (gpointer user_data)
return TRUE;
}
@@ -42,7 +54,7 @@ diff -u -Nr gnome-settings-daemon-3.3.91/gnome-settings-daemon/gnome-settings-se
static void
gnome_settings_session_proxy_signal_cb (GDBusProxy *proxy,
-@@ -371,35 +371,38 @@
+@@ -371,22 +371,25 @@ got_manager_proxy_cb (GObject *source_object, GAsyncResult *res, gpointer user_d
g_object_unref (proxy_manager);
}
@@ -56,77 +68,59 @@ diff -u -Nr gnome-settings-daemon-3.3.91/gnome-settings-daemon/gnome-settings-se
#ifdef HAVE_SYSTEMD
- sd_pid_get_session (getpid(), &session->priv->session_id);
+ session->priv->sd_source = NULL;
++
++ if (sd_booted () > 0) {
++ sd_pid_get_session (getpid(), &session->priv->session_id);
- session->priv->sd_source = sd_source_new ();
- g_source_set_callback (session->priv->sd_source, sessions_changed, session, NULL);
- g_source_attach (session->priv->sd_source, NULL);
-+ if (sd_booted () > 0) {
-+ sd_pid_get_session (getpid(), &session->priv->session_id);
-
-- sessions_changed (session);
--#else
-- session->priv->cancellable = g_cancellable_new ();
+ session->priv->sd_source = sd_source_new ();
+ g_source_set_callback (session->priv->sd_source, sessions_changed, session, NULL);
+ g_source_attach (session->priv->sd_source, NULL);
-- /* connect to ConsoleKit */
-- g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
-- G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
-- NULL,
-- CONSOLEKIT_NAME,
-- CONSOLEKIT_MANAGER_PATH,
-- CONSOLEKIT_MANAGER_INTERFACE,
-- session->priv->cancellable,
-- got_manager_proxy_cb,
-- session);
+- sessions_changed (session);
+-#else
+ sessions_changed (session);
-+ } else
- #endif
-+ {
-+ session->priv->cancellable = g_cancellable_new ();
-+
-+ /* connect to ConsoleKit */
-+ g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
-+ G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
-+ NULL,
-+ CONSOLEKIT_NAME,
-+ CONSOLEKIT_MANAGER_PATH,
-+ CONSOLEKIT_MANAGER_INTERFACE,
-+ session->priv->cancellable,
-+ got_manager_proxy_cb,
-+ session);
++ return;
+ }
++#endif
+ session->priv->cancellable = g_cancellable_new ();
+
+ /* connect to ConsoleKit */
+@@ -399,7 +402,6 @@ gnome_settings_session_init (GnomeSettingsSession *session)
+ session->priv->cancellable,
+ got_manager_proxy_cb,
+ session);
+-#endif
}
static void
-@@ -415,14 +418,15 @@
+@@ -415,15 +417,17 @@ gnome_settings_session_finalize (GObject *object)
if (session->priv->sd_source != NULL) {
g_source_destroy (session->priv->sd_source);
g_source_unref (session->priv->sd_source);
-- }
++ goto out;
+ }
-#else
-- g_cancellable_cancel (session->priv->cancellable);
--
-- if (session->priv->proxy_session != NULL)
-- g_object_unref (session->priv->proxy_session);
-- g_object_unref (session->priv->cancellable);
-+ } else
- #endif
-+ {
-+ g_cancellable_cancel (session->priv->cancellable);
++#endif
+
-+ if (session->priv->proxy_session != NULL)
-+ g_object_unref (session->priv->proxy_session);
-+ g_object_unref (session->priv->cancellable);
-+ }
+ g_cancellable_cancel (session->priv->cancellable);
+ if (session->priv->proxy_session != NULL)
+ g_object_unref (session->priv->proxy_session);
+ g_object_unref (session->priv->cancellable);
+-#endif
+
++out:
G_OBJECT_CLASS (gnome_settings_session_parent_class)->finalize (object);
}
-diff -u -Nr gnome-settings-daemon-3.3.91/plugins/power/gsd-power-manager.c gnome-settings-daemon-3.3.91-systemd-fallback/plugins/power/gsd-power-manager.c
---- gnome-settings-daemon-3.3.91/plugins/power/gsd-power-manager.c 2012-03-05 18:27:43.000000000 +0100
-+++ gnome-settings-daemon-3.3.91-systemd-fallback/plugins/power/gsd-power-manager.c 2012-03-10 16:20:31.417634553 +0100
-@@ -2031,7 +2031,7 @@
+
+diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
+index 8db04e5..9883d76 100644
+--- a/plugins/power/gsd-power-manager.c
++++ b/plugins/power/gsd-power-manager.c
+@@ -2031,7 +2031,7 @@ systemd_stop (void)
g_object_unref (bus);
}
@@ -135,7 +129,7 @@ diff -u -Nr gnome-settings-daemon-3.3.91/plugins/power/gsd-power-manager.c gnome
static void
consolekit_stop_cb (GObject *source_object,
-@@ -2081,7 +2081,6 @@
+@@ -2081,7 +2081,6 @@ consolekit_stop (void)
consolekit_stop_cb, NULL);
g_object_unref (proxy);
}
@@ -143,7 +137,7 @@ diff -u -Nr gnome-settings-daemon-3.3.91/plugins/power/gsd-power-manager.c gnome
static void
upower_sleep_cb (GObject *source_object,
-@@ -2135,10 +2134,11 @@
+@@ -2135,10 +2134,11 @@ do_power_action_type (GsdPowerManager *manager,
* hibernate is not available and is marginally better
* than just powering down the computer mid-write */
#ifdef HAVE_SYSTEMD