summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-libs/cairo/files/cairo-1.12.10-xshm-corruption.patch')
-rw-r--r--x11-libs/cairo/files/cairo-1.12.10-xshm-corruption.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/x11-libs/cairo/files/cairo-1.12.10-xshm-corruption.patch b/x11-libs/cairo/files/cairo-1.12.10-xshm-corruption.patch
new file mode 100644
index 000000000000..92bf13496a4e
--- /dev/null
+++ b/x11-libs/cairo/files/cairo-1.12.10-xshm-corruption.patch
@@ -0,0 +1,28 @@
+From c006b886d28a772d7a62cec52ab7e0c8196c36f6 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Tue, 29 Jan 2013 03:01:31 +0000
+Subject: xlib/shm: Force synchronisation for scratch SHM image buffers
+
+The scratch image buffers are used for uploads to the xserver and so we
+must be careful not to overwrite active SHM segments. Unfortunately we
+told the core SHM allocator that we would sync before using the images,
+which was a lie.
+
+Reported-by: Michael Natterer <mitch@gimp.org>
+Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+---
+diff --git a/src/cairo-xlib-surface-shm.c b/src/cairo-xlib-surface-shm.c
+index 43cecdf..32c7033 100644
+--- a/src/cairo-xlib-surface-shm.c
++++ b/src/cairo-xlib-surface-shm.c
+@@ -1155,7 +1155,7 @@ _cairo_xlib_surface_create_shm__image (cairo_xlib_surface_t *surface,
+ return NULL;
+
+ return &_cairo_xlib_shm_surface_create (surface, format, width, height,
+- TRUE, 0)->image.base;
++ FALSE, 0)->image.base;
+ }
+
+ cairo_surface_t *
+--
+cgit v0.9.0.2-2-gbebe