diff options
author | Paul Bredbury <brebs@sent.com> | 2019-03-24 21:46:24 +0000 |
---|---|---|
committer | Leonardo Arena <rnalrd@alpinelinux.org> | 2019-04-02 14:25:04 +0000 |
commit | 69c7ab049caba12fd1a39a5cd45471e838e1db66 (patch) | |
tree | bfb4f0dd0d6a07b941a421332b4bc0da2ae10cb7 /community/mate-session-manager/systemd-dependency.patch | |
parent | 5851d7b8a8a3a760f1af79ff5ef62e7e7d85e7ca (diff) | |
download | aports-69c7ab049caba12fd1a39a5cd45471e838e1db66.tar.bz2 aports-69c7ab049caba12fd1a39a5cd45471e838e1db66.tar.xz |
community/mate-session-manager: upgrade to 1.22.0
Diffstat (limited to 'community/mate-session-manager/systemd-dependency.patch')
-rw-r--r-- | community/mate-session-manager/systemd-dependency.patch | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/community/mate-session-manager/systemd-dependency.patch b/community/mate-session-manager/systemd-dependency.patch new file mode 100644 index 0000000000..912a5e1b50 --- /dev/null +++ b/community/mate-session-manager/systemd-dependency.patch @@ -0,0 +1,67 @@ +From https://github.com/mate-desktop/mate-session-manager/commit/254a091b31517a25bc037b31daff27fbb74ac90d + +From 254a091b31517a25bc037b31daff27fbb74ac90d Mon Sep 17 00:00:00 2001 +From: Victor Kareh <vkareh@redhat.com> +Date: Wed, 6 Mar 2019 09:20:36 -0500 +Subject: [PATCH] Guard against missing systemd + +--- + mate-session/gsm-systemd.c | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/mate-session/gsm-systemd.c b/mate-session/gsm-systemd.c +index da3f23b..d03cafd 100644 +--- a/mate-session/gsm-systemd.c ++++ b/mate-session/gsm-systemd.c +@@ -429,16 +429,31 @@ gsm_systemd_is_last_session_for_user (GsmSystemd *manager) + gboolean is_last_session; + int ret, i; + ++#ifdef HAVE_SYSTEMD + ret = sd_pid_get_session (getpid (), &session); ++#endif ++ ++ if (session == NULL) { ++ return FALSE; ++ } + + if (ret != 0) { ++ free (session); + return FALSE; + } + ++#ifdef HAVE_SYSTEMD + ret = sd_uid_get_sessions (getuid (), FALSE, &sessions); ++#endif ++ ++ if (sessions == NULL) { ++ free (session); ++ return FALSE; ++ } + + if (ret <= 0) { + free (session); ++ free (sessions); + return FALSE; + } + +@@ -450,7 +465,9 @@ gsm_systemd_is_last_session_for_user (GsmSystemd *manager) + if (g_strcmp0 (sessions[i], session) == 0) + continue; + ++#ifdef HAVE_SYSTEMD + ret = sd_session_get_state (sessions[i], &state); ++#endif + + if (ret != 0) + continue; +@@ -461,7 +478,9 @@ gsm_systemd_is_last_session_for_user (GsmSystemd *manager) + } + free (state); + ++#ifdef HAVE_SYSTEMD + ret = sd_session_get_type (sessions[i], &type); ++#endif + + if (ret != 0) + continue; |