summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@fedoraproject.org>2009-12-17 23:35:48 +0000
committerOwen Taylor <otaylor@fedoraproject.org>2009-12-17 23:35:48 +0000
commit891e460d37fc62e96d18877c31df3ad1ecf9cc98 (patch)
treeb7400554347cf81f0eba3901fa3ee210fb49c7b0
parent97b03230fda37fecb08ffb38d83e33d4c86aa7be (diff)
downloadmetacity-891e460d37fc62e96d18877c31df3ad1ecf9cc98.tar.gz
metacity-891e460d37fc62e96d18877c31df3ad1ecf9cc98.tar.xz
metacity-891e460d37fc62e96d18877c31df3ad1ecf9cc98.zip
- Fix crash in in tooltip on_style_set() (rhbz 546509)
- Fix Crash in SmcSetProperties() on exit (rhbz 539905, gnome 604867)
-rw-r--r--fresh-tooltips.patch8
-rw-r--r--metacity-2.28-IceCloseConnection.patch44
-rw-r--r--metacity.spec15
3 files changed, 59 insertions, 8 deletions
diff --git a/fresh-tooltips.patch b/fresh-tooltips.patch
index 03c2d34..9c7c45f 100644
--- a/fresh-tooltips.patch
+++ b/fresh-tooltips.patch
@@ -1,6 +1,6 @@
diff -up metacity-2.28.0/src/ui/fixedtip.c.fresh-tooltips metacity-2.28.0/src/ui/fixedtip.c
---- metacity-2.28.0/src/ui/fixedtip.c.fresh-tooltips 2009-10-28 12:32:09.098105658 -0400
-+++ metacity-2.28.0/src/ui/fixedtip.c 2009-10-28 15:33:52.419756065 -0400
+--- metacity-2.28.0/src/ui/fixedtip.c.fresh-tooltips 2009-12-17 18:06:26.000000000 -0500
++++ metacity-2.28.0/src/ui/fixedtip.c 2009-12-17 18:08:23.000000000 -0500
@@ -50,33 +50,237 @@ static int screen_right_edge = 0;
*/
static int screen_bottom_edge = 0;
@@ -299,8 +299,8 @@ diff -up metacity-2.28.0/src/ui/fixedtip.c.fresh-tooltips metacity-2.28.0/src/ui
g_signal_connect (tip, "destroy",
G_CALLBACK (gtk_widget_destroyed), &tip);
+
-+ g_signal_connect_swapped (tip, "style-set",
-+ G_CALLBACK (on_style_set), NULL);
++ g_signal_connect (tip, "style-set",
++ G_CALLBACK (on_style_set), NULL);
}
gtk_label_set_markup (GTK_LABEL (label), markup_text);
diff --git a/metacity-2.28-IceCloseConnection.patch b/metacity-2.28-IceCloseConnection.patch
new file mode 100644
index 0000000..dc996ea
--- /dev/null
+++ b/metacity-2.28-IceCloseConnection.patch
@@ -0,0 +1,44 @@
+From 3fd59d1e7e1a23202f58536fb7a995aa5951664b Mon Sep 17 00:00:00 2001
+From: Owen W. Taylor <otaylor@fishsoup.net>
+Date: Thu, 17 Dec 2009 16:20:18 -0500
+Subject: [PATCH] Don't call IceCloseConnection() behind libSM's back
+
+The ICE connection is opened by libSM; we can't just close it when
+we get an IOError on the ICE connection; instead call SmcCloseConnection()
+and mark the connection as closed. This will prevent a segfault if we
+exit out of the metacity main loop and get to meta_finalize().
+
+https://bugzilla.gnome.org/show_bug.cgi?id=604867
+---
+ src/core/session.c | 8 +++++++-
+ 1 files changed, 7 insertions(+), 1 deletions(-)
+
+diff --git a/src/core/session.c b/src/core/session.c
+index 96d8d71..0a12649 100644
+--- a/src/core/session.c
++++ b/src/core/session.c
+@@ -84,6 +84,7 @@ static char* load_state (const char *previous_save_file);
+ static void regenerate_save_file (void);
+ static const char* full_save_file (void);
+ static void warn_about_lame_clients_and_finish_interact (gboolean shutdown);
++static void disconnect (void);
+
+ /* This is called when data is available on an ICE connection. */
+ static gboolean
+@@ -106,7 +107,12 @@ process_ice_messages (GIOChannel *channel,
+ IcePointer context = IceGetConnectionContext (connection);
+ #endif
+
+- /* We were disconnected */
++ /* We were disconnected; close our connection to the
++ * session manager, this will result in the ICE connection
++ * being cleaned up, since it is owned by libSM.
++ */
++ disconnect ();
++ meta_quit (META_EXIT_SUCCESS);
+ IceSetShutdownNegotiation (connection, False);
+ IceCloseConnection (connection);
+
+--
+1.6.5.2
+
diff --git a/metacity.spec b/metacity.spec
index eea0c4a..1bd3da0 100644
--- a/metacity.spec
+++ b/metacity.spec
@@ -3,7 +3,7 @@
Summary: Unobtrusive window manager
Name: metacity
Version: 2.28.0
-Release: 13%{?dist}
+Release: 14%{?dist}
URL: http://download.gnome.org/sources/metacity/
Source0: http://download.gnome.org/sources/metacity/2.28/metacity-%{version}.tar.bz2
# http://bugzilla.gnome.org/show_bug.cgi?id=558723
@@ -52,6 +52,8 @@ Patch23: metacity-2.28-visual-bell.patch
Patch24: metacity-2.28-empty-keybindings.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=604319
Patch25: metacity-2.28-xioerror-unknown-display.patch
+# https://bugzilla.gnome.org/show_bug.cgi?id=604867
+Patch26: metacity-2.28-IceCloseConnection.patch
License: GPLv2+
Group: User Interface/Desktops
@@ -134,6 +136,7 @@ API. This package exists purely for technical reasons.
%patch23 -p1 -b .visual-bell
%patch24 -p1 -b .empty-keybindings
%patch25 -p1 -b .xioerror-unknown-display
+%patch26 -p1 -b .IceCloseConnection
# force regeneration
rm src/metacity.schemas
@@ -241,21 +244,25 @@ fi
%{_mandir}/man1/metacity-window-demo.1.gz
%changelog
+* Thu Dec 17 2009 Owen Taylor <otaylor@redhat.com> - 2.28.0-13
+- Fix crash in in tooltip on_style_set() (rhbz 546509)
+- Fix Crash in SmcSetProperties() on exit (rhbz 539905, gnome 604867)
+
* Thu Dec 10 2009 Owen Taylor <otaylor@redhat.com> - 2.28.0-12
- Require gnome-themes rather than nodoka-metacity-theme (rhbz 532455, Stijn Hoop)
- Add patches for GNOME bugs
445447 - Application-induced window raise fails when raise_on_click off (rhbz 526045)
530702 - compiz doesn't start if metacity compositor is enabled (rhbz 537791)
- 559816 - Doesn't update keybindings being disabled/cleared (rhbz 532282)
+ 559816 - Doesn't update keybindings being disabled/cleared (rhbz 473224)
567528 - Cannot raise windows from applications in Tcl/Tk and Java (rhbz 503522)
577576 - Failed to read saved session file warning on new sessions (rhbz 493245)
- 598231 - When Chromium rings the bell, metacity quits(rhbz 532282)
+ 598231 - When Chromium rings the bell, metacity quits (rhbz 532282)
598995 - Don't focus ancestor window on a different workspace (rhbz 237158)
599097 - For mouse and sloppy focus, return to "mouse mode" on motion (rhbz 530261)
599248 - Add no_focus_windows preference to list windows that shouldn't be focused (rhbz 530262)
599261 - Add a new_windows_always_on_top preference (rhbz 530263)
599262 - Add XFCE Terminal as a terminal
- 604319 - XIOError unknown display (rhbz 537845)
+ 604319 - Handle XError and XIOError for unknown displays (rhbz 537845)
* Thu Nov 26 2009 Matthias Clasen <mclasen@redhat.com> - 2.28.0-11
- Fix a problem with the previous change