Backport an upstream patch for frequent gnome-shell crashes
https://bugzilla.redhat.com/show_bug.cgi?id=827158 https://bugzilla.gnome.org/show_bug.cgi?id=692706
This commit is contained in:
parent
dfdf832e3a
commit
2d8603a03b
@ -0,0 +1,53 @@
|
|||||||
|
From 19391a9626b087bd4df452e8699d53caa54c350f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Emmanuele Bassi <ebassi@gnome.org>
|
||||||
|
Date: Mon, 6 May 2013 15:46:25 -0700
|
||||||
|
Subject: [PATCH] cally: Use a weak pointer to hold the key focus in CallyStage
|
||||||
|
|
||||||
|
We want to avoid the pointer getting stale, and causing crashes.
|
||||||
|
|
||||||
|
https://bugzilla.gnome.org/show_bug.cgi?id=692706
|
||||||
|
---
|
||||||
|
clutter/cally/cally-stage.c | 20 ++++++++++++++++++--
|
||||||
|
1 file changed, 18 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/clutter/cally/cally-stage.c b/clutter/cally/cally-stage.c
|
||||||
|
index 2b1cfd1..c95ccb0 100644
|
||||||
|
--- a/clutter/cally/cally-stage.c
|
||||||
|
+++ b/clutter/cally/cally-stage.c
|
||||||
|
@@ -139,7 +139,11 @@ cally_stage_notify_key_focus_cb (ClutterStage *stage,
|
||||||
|
AtkObject *old = NULL;
|
||||||
|
|
||||||
|
if (self->priv->key_focus != NULL)
|
||||||
|
- old = clutter_actor_get_accessible (self->priv->key_focus);
|
||||||
|
+ {
|
||||||
|
+ g_object_remove_weak_pointer (G_OBJECT (self->priv->key_focus),
|
||||||
|
+ (gpointer *) &self->priv->key_focus);
|
||||||
|
+ old = clutter_actor_get_accessible (self->priv->key_focus);
|
||||||
|
+ }
|
||||||
|
else
|
||||||
|
old = clutter_actor_get_accessible (CLUTTER_ACTOR (stage));
|
||||||
|
|
||||||
|
@@ -154,7 +158,19 @@ cally_stage_notify_key_focus_cb (ClutterStage *stage,
|
||||||
|
self->priv->key_focus = key_focus;
|
||||||
|
|
||||||
|
if (key_focus != NULL)
|
||||||
|
- new = clutter_actor_get_accessible (key_focus);
|
||||||
|
+ {
|
||||||
|
+ /* ensure that if the key focus goes away, the field inside
|
||||||
|
+ * CallyStage is reset. see bug:
|
||||||
|
+ *
|
||||||
|
+ * https://bugzilla.gnome.org/show_bug.cgi?id=692706
|
||||||
|
+ *
|
||||||
|
+ * we remove the weak pointer above.
|
||||||
|
+ */
|
||||||
|
+ g_object_add_weak_pointer (G_OBJECT (self->priv->key_focus),
|
||||||
|
+ (gpointer *) &self->priv->key_focus);
|
||||||
|
+
|
||||||
|
+ new = clutter_actor_get_accessible (key_focus);
|
||||||
|
+ }
|
||||||
|
else
|
||||||
|
new = clutter_actor_get_accessible (CLUTTER_ACTOR (stage));
|
||||||
|
|
||||||
|
--
|
||||||
|
1.8.1.4
|
||||||
|
|
@ -4,13 +4,15 @@
|
|||||||
|
|
||||||
Name: clutter
|
Name: clutter
|
||||||
Version: 1.14.4
|
Version: 1.14.4
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: Open Source software library for creating rich graphical user interfaces
|
Summary: Open Source software library for creating rich graphical user interfaces
|
||||||
|
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: http://www.clutter-project.org/
|
URL: http://www.clutter-project.org/
|
||||||
Source0: http://download.gnome.org/sources/clutter/1.14/clutter-%{version}.tar.xz
|
Source0: http://download.gnome.org/sources/clutter/1.14/clutter-%{version}.tar.xz
|
||||||
|
# https://bugzilla.gnome.org/show_bug.cgi?id=692706
|
||||||
|
Patch0: 0001-cally-Use-a-weak-pointer-to-hold-the-key-focus-in-Ca.patch
|
||||||
|
|
||||||
BuildRequires: glib2-devel mesa-libGL-devel pkgconfig pango-devel
|
BuildRequires: glib2-devel mesa-libGL-devel pkgconfig pango-devel
|
||||||
BuildRequires: cairo-gobject-devel gdk-pixbuf2-devel atk-devel
|
BuildRequires: cairo-gobject-devel gdk-pixbuf2-devel atk-devel
|
||||||
@ -74,6 +76,7 @@ This package contains documentation for clutter.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1 -b .cally_crash
|
||||||
|
|
||||||
%build
|
%build
|
||||||
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
|
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
|
||||||
@ -122,6 +125,9 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
|
|||||||
%{_datadir}/gtk-doc/html/cally
|
%{_datadir}/gtk-doc/html/cally
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri May 17 2013 Kalev Lember <kalevlember@gmail.com> - 1.14.4-2
|
||||||
|
- Backport an upstream patch for frequent gnome-shell crashes (#827158)
|
||||||
|
|
||||||
* Wed May 15 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.14.4-1
|
* Wed May 15 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.14.4-1
|
||||||
- Update to 1.14.4
|
- Update to 1.14.4
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user