Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/bockbuild.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hutchinson <m.j.hutchinson@gmail.com>2011-07-26 00:26:47 +0400
committerMichael Hutchinson <m.j.hutchinson@gmail.com>2011-07-26 00:26:47 +0400
commit344cdbd2a385b2e79cc975991f27218cd9c619f3 (patch)
tree797c782d7e3452e6b46ba5f2ac3a3af626b5c077 /packages
parenta70ba0896d3dea65f8e92fa9c64fe7a39d5348f2 (diff)
Added patch for gtk clipboard crash
Diffstat (limited to 'packages')
-rw-r--r--packages/gtk+.py4
-rw-r--r--packages/patches/gtk/gtk-clipboard-crash.patch30
2 files changed, 34 insertions, 0 deletions
diff --git a/packages/gtk+.py b/packages/gtk+.py
index 8c49017..9633518 100644
--- a/packages/gtk+.py
+++ b/packages/gtk+.py
@@ -42,6 +42,10 @@ class GtkPackage (GnomePackage):
# new window on Lion
# https://bugzilla.gnome.org/show_bug.cgi?id=655087
'patches/gtk/gdkemptypath.patch',
+
+ # Bug 508601 - Copying from GTK+ applications causes crash
+ # https://bugzilla.gnome.org/show_bug.cgi?id=508601
+ 'patches/gtk/gtk-clipboard-crash.patch',
])
def prep (self):
diff --git a/packages/patches/gtk/gtk-clipboard-crash.patch b/packages/patches/gtk/gtk-clipboard-crash.patch
new file mode 100644
index 0000000..a176d97
--- /dev/null
+++ b/packages/patches/gtk/gtk-clipboard-crash.patch
@@ -0,0 +1,30 @@
+From 8d69f3daf258c03e3b8d839cacc15a7b4d12e64d Mon Sep 17 00:00:00 2001
+From: Kristian Rietveld <kris@gtk.org>
+Date: Mon, 25 Jul 2011 20:02:25 +0000
+Subject: Bug 508601 - Copying from GTK+ applications causes crash
+
+In GtkClipboardOwner pasteboard:provideDataForType do not call
+_gtk_quartz_set_selection_data_for_pasteboard() is selection_data.length
+is smaller than 0. The function relies on having a positive length,
+since it stores the length in a uint ...
+---
+diff --git a/gtk/gtkclipboard-quartz.c b/gtk/gtkclipboard-quartz.c
+index a77d443..ee7766e 100644
+--- a/gtk/gtkclipboard-quartz.c
++++ b/gtk/gtkclipboard-quartz.c
+@@ -110,9 +110,10 @@ struct _GtkClipboardClass
+ clipboard->get_func (clipboard, &selection_data,
+ info,
+ clipboard->user_data);
+-
+- _gtk_quartz_set_selection_data_for_pasteboard (clipboard->pasteboard,
+- &selection_data);
++
++ if (selection_data.length >= 0)
++ _gtk_quartz_set_selection_data_for_pasteboard (clipboard->pasteboard,
++ &selection_data);
+
+ g_free (selection_data.data);
+ }
+--
+cgit v0.9