[gnome-session/f20] Don't abort when all clients exit
Ray Strode
rstrode at fedoraproject.org
Mon Jan 20 20:13:26 UTC 2014
commit 93ba9d9958eadbd9c3cdf914618f6023b632c5c8
Author: Ray Strode <rstrode at redhat.com>
Date: Mon Jan 20 15:13:13 2014 -0500
Don't abort when all clients exit
If all of our clients exit, remove_clients_for_connection()
calls end_phase() which in turn invokes gsm_manager_quit() that
checks the logout type.
But at this point we only have _LOGOUT_NONE, so we end up aborting.
It's fine to just call _quit() in this case, and this avoids us
dumping core.
This was happening to me when session startup failed for other
reasons.
https://bugzilla.gnome.org/show_bug.cgi?id=710480
http://bugzilla.redhat.com/1045464
dont-abort-when-all-clients-exit.patch | 32 ++++++++++++++++++++++++++++++++
gnome-session.spec | 10 +++++++++-
2 files changed, 41 insertions(+), 1 deletions(-)
---
diff --git a/dont-abort-when-all-clients-exit.patch b/dont-abort-when-all-clients-exit.patch
new file mode 100644
index 0000000..0cbf171
--- /dev/null
+++ b/dont-abort-when-all-clients-exit.patch
@@ -0,0 +1,32 @@
+From 6e203f466118daf9941fb9c8dd64f1488dea14e7 Mon Sep 17 00:00:00 2001
+From: Colin Walters <walters at verbum.org>
+Date: Fri, 18 Oct 2013 22:15:14 +0000
+Subject: gsm-manager: Don't abort when all clients exit
+
+If all of our clients exit, remove_clients_for_connection()
+calls end_phase() which in turn invokes gsm_manager_quit() that
+checks the logout type.
+
+But at this point we only have _LOGOUT_NONE, so we end up aborting.
+It's fine to just call _quit() in this case, and this avoids us
+dumping core.
+
+This was happening to me when session startup failed for other
+reasons.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=710480
+---
+diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c
+index 17b971c..e0d25b5 100644
+--- a/gnome-session/gsm-manager.c
++++ b/gnome-session/gsm-manager.c
+@@ -519,6 +519,7 @@ gsm_manager_quit (GsmManager *manager)
+
+ switch (manager->priv->logout_type) {
+ case GSM_MANAGER_LOGOUT_LOGOUT:
++ case GSM_MANAGER_LOGOUT_NONE:
+ gsm_quit ();
+ break;
+ case GSM_MANAGER_LOGOUT_REBOOT:
+--
+cgit v0.9.2
diff --git a/gnome-session.spec b/gnome-session.spec
index 5d2c70f..70f202e 100644
--- a/gnome-session.spec
+++ b/gnome-session.spec
@@ -11,7 +11,7 @@
Summary: GNOME session manager
Name: gnome-session
Version: 3.10.1
-Release: 1%{?dist}
+Release: 2%{?dist}
URL: http://www.gnome.org
#VCS: git:git://git.gnome.org/gnome-session
Source0: http://download.gnome.org/sources/gnome-session/3.10/%{name}-%{version}.tar.xz
@@ -21,6 +21,9 @@ Patch1: gnome-session-3.3.92-nv30.patch
Patch2: 0001-main-Set-XDG_MENU_PREFIX.patch
Patch3: gnome-session-3.6.2-swrast.patch
+# http://bugs.gnome.org/710480
+Patch4: dont-abort-when-all-clients-exit.patch
+
License: GPLv2+
Group: User Interface/Desktops
@@ -82,6 +85,7 @@ Desktop file to add GNOME to display manager session menu.
%patch1 -p1 -b .nv30
%patch2 -p1 -b .set-xdg-menu-prefix
%patch3 -p1 -b .swrast
+%patch4 -p1 -b .dont-abort-when-all-clients-exit
echo "ACLOCAL_AMFLAGS = -I m4" >> Makefile.am
@@ -138,6 +142,10 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &>/dev/null || :
%{_datadir}/glib-2.0/schemas/org.gnome.SessionManager.gschema.xml
%changelog
+* Mon Jan 20 2014 Ray Strode <rstrode at redhat.com> 3.10.1-2
+- Don't abort when all clients exit
+ Related: #1045464
+
* Mon Oct 14 2013 Richard Hughes <rhughes at redhat.com> - 3.10.1-1
- Update to 3.10.1
More information about the scm-commits
mailing list