Update to 1.15.2

... and drop upstream patches.
This commit is contained in:
Kalev Lember 2013-08-09 21:55:01 +02:00
parent 1aff590029
commit 65c1950940
4 changed files with 8 additions and 133 deletions

View File

@ -1,53 +0,0 @@
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

View File

@ -1,70 +0,0 @@
From d343cc6289583a7b0d929b82b740499ed588b1ab Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Mon, 10 Jun 2013 21:41:24 -0400
Subject: [PATCH] x11: trap errors when calling XIQueryDevice
Devices can disappear at any time, causing XIQueryDevice
to throw an error. At the same time, plug a memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=701974
---
clutter/x11/clutter-device-manager-xi2.c | 30 ++++++++++++++++++++++--------
1 file changed, 22 insertions(+), 8 deletions(-)
diff --git a/clutter/x11/clutter-device-manager-xi2.c b/clutter/x11/clutter-device-manager-xi2.c
index 6a06cec..49ee212 100644
--- a/clutter/x11/clutter-device-manager-xi2.c
+++ b/clutter/x11/clutter-device-manager-xi2.c
@@ -408,10 +408,16 @@ translate_hierarchy_event (ClutterBackendX11 *backend_x11,
CLUTTER_NOTE (EVENT, "Hierarchy event: device enabled");
+ clutter_x11_trap_x_errors ();
info = XIQueryDevice (backend_x11->xdpy,
ev->info[i].deviceid,
&n_devices);
- add_device (manager_xi2, backend_x11, &info[0], FALSE);
+ clutter_x11_untrap_x_errors ();
+ if (info != NULL)
+ {
+ add_device (manager_xi2, backend_x11, &info[0], FALSE);
+ XIFreeDeviceInfo (info);
+ }
}
else if (ev->info[i].flags & XIDeviceDisabled)
{
@@ -448,16 +454,24 @@ translate_hierarchy_event (ClutterBackendX11 *backend_x11,
/* and attach the slave to the new master if needed */
if (ev->info[i].flags & XISlaveAttached)
{
+ clutter_x11_trap_x_errors ();
info = XIQueryDevice (backend_x11->xdpy,
ev->info[i].deviceid,
&n_devices);
- master = g_hash_table_lookup (manager_xi2->devices_by_id,
- GINT_TO_POINTER (info->attachment));
- _clutter_input_device_set_associated_device (slave, master);
- _clutter_input_device_add_slave (master, slave);
-
- send_changed = TRUE;
- XIFreeDeviceInfo (info);
+ clutter_x11_untrap_x_errors ();
+ if (info != NULL)
+ {
+ master = g_hash_table_lookup (manager_xi2->devices_by_id,
+ GINT_TO_POINTER (info->attachment));
+ if (master != NULL)
+ {
+ _clutter_input_device_set_associated_device (slave, master);
+ _clutter_input_device_add_slave (master, slave);
+
+ send_changed = TRUE;
+ }
+ XIFreeDeviceInfo (info);
+ }
}
if (send_changed)
--
1.8.3.1

View File

@ -5,18 +5,14 @@
%endif
Name: clutter
Version: 1.14.4
Release: 4%{?dist}
Version: 1.15.2
Release: 1%{?dist}
Summary: Open Source software library for creating rich graphical user interfaces
Group: Development/Libraries
License: LGPLv2+
URL: http://www.clutter-project.org/
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
# https://bugzilla.gnome.org/show_bug.cgi?id=701974
Patch1: 0001-x11-trap-errors-when-calling-XIQueryDevice.patch
Source0: http://download.gnome.org/sources/clutter/1.15/clutter-%{version}.tar.xz
BuildRequires: glib2-devel mesa-libGL-devel pkgconfig pango-devel
BuildRequires: cairo-gobject-devel gdk-pixbuf2-devel atk-devel
@ -80,8 +76,6 @@ This package contains documentation for clutter.
%prep
%setup -q
%patch0 -p1 -b .cally_crash
%patch1 -p1 -b .xi2-crash
%build
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
@ -130,6 +124,10 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
%{_datadir}/gtk-doc/html/cally
%changelog
* Fri Aug 09 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.2-1
- Update to 1.15.2
- Dropped upstream patches
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.14.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

View File

@ -1 +1 @@
c072e4c27e69368f2b877ea4f6da2cdf clutter-1.14.4.tar.xz
a7883c0c2c2d7d9488962b013283c101 clutter-1.15.2.tar.xz