Backport an upstream fix for a Wayland session crash

This commit is contained in:
Kalev Lember 2014-05-07 22:23:46 +02:00
parent 23add2644f
commit aba3445628
2 changed files with 67 additions and 1 deletions

View File

@ -0,0 +1,59 @@
From 845fdda22c1e7595d72b710796ed61490b02cbbd Mon Sep 17 00:00:00 2001
From: "Jasper St. Pierre" <jstpierre@mecheye.net>
Date: Sat, 3 May 2014 12:49:41 -0400
Subject: [PATCH] keybindings: Make sure not to call meta_change_keygrab under
Wayland
---
src/core/keybindings.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/core/keybindings.c b/src/core/keybindings.c
index bf9be99..b0a6bbd 100644
--- a/src/core/keybindings.c
+++ b/src/core/keybindings.c
@@ -1259,6 +1259,7 @@ guint
meta_display_grab_accelerator (MetaDisplay *display,
const char *accelerator)
{
+ MetaBackend *backend = meta_get_backend ();
MetaKeyBinding *binding;
MetaKeyGrab *grab;
guint keysym = 0;
@@ -1284,7 +1285,8 @@ meta_display_grab_accelerator (MetaDisplay *display,
if (display_get_keybinding (display, keycode, mask))
return META_KEYBINDING_ACTION_NONE;
- meta_change_keygrab (display, display->screen->xroot, TRUE, keysym, keycode, mask);
+ if (META_IS_BACKEND_X11 (backend))
+ meta_change_keygrab (display, display->screen->xroot, TRUE, keysym, keycode, mask);
grab = g_new0 (MetaKeyGrab, 1);
grab->action = next_dynamic_keybinding_action ();
@@ -1314,6 +1316,7 @@ gboolean
meta_display_ungrab_accelerator (MetaDisplay *display,
guint action)
{
+ MetaBackend *backend = meta_get_backend ();
MetaKeyBinding *binding;
MetaKeyGrab *grab;
char *key;
@@ -1335,10 +1338,11 @@ meta_display_ungrab_accelerator (MetaDisplay *display,
{
guint32 index_key;
- meta_change_keygrab (display, display->screen->xroot, FALSE,
- binding->keysym,
- binding->keycode,
- binding->mask);
+ if (META_IS_BACKEND_X11 (backend))
+ meta_change_keygrab (display, display->screen->xroot, FALSE,
+ binding->keysym,
+ binding->keycode,
+ binding->mask);
index_key = key_binding_key (binding->keycode, binding->mask);
g_hash_table_remove (display->key_bindings_index, GINT_TO_POINTER (index_key));
--
1.9.0

View File

@ -1,6 +1,6 @@
Name: mutter Name: mutter
Version: 3.13.1 Version: 3.13.1
Release: 3%{?dist} Release: 4%{?dist}
Summary: Window and compositing manager based on Clutter Summary: Window and compositing manager based on Clutter
Group: User Interface/Desktops Group: User Interface/Desktops
@ -9,6 +9,9 @@ License: GPLv2+
URL: http://www.gnome.org URL: http://www.gnome.org
Source0: http://download.gnome.org/sources/%{name}/3.13/%{name}-%{version}.tar.xz Source0: http://download.gnome.org/sources/%{name}/3.13/%{name}-%{version}.tar.xz
# Backported upstream fix for a Wayland session crash
Patch0: 0001-keybindings-Make-sure-not-to-call-meta_change_keygra.patch
BuildRequires: clutter-devel >= 1.15.90 BuildRequires: clutter-devel >= 1.15.90
BuildRequires: pango-devel BuildRequires: pango-devel
BuildRequires: startup-notification-devel BuildRequires: startup-notification-devel
@ -68,6 +71,7 @@ utilities for testing Metacity/Mutter themes.
%prep %prep
%setup -q %setup -q
%patch0 -p1
%build %build
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; fi; (if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; fi;
@ -132,6 +136,9 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
%exclude %{_datadir}/gtk-doc %exclude %{_datadir}/gtk-doc
%changelog %changelog
* Wed May 07 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.1-4
- Backport an upstream fix for a Wayland session crash
* Wed May 07 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.1-3 * Wed May 07 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.1-3
- Install mutter-launch as setuid root - Install mutter-launch as setuid root