Date: Wednesday, January 23, 2013 @ 12:37:31
  Author: jgc
Revision: 175889

archrelease: copy trunk to extra-i686, extra-x86_64

Added:
  cairo/repos/extra-i686/PKGBUILD
    (from rev 175888, cairo/trunk/PKGBUILD)
  
cairo/repos/extra-i686/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch
    (from rev 175888, 
cairo/trunk/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch)
  cairo/repos/extra-i686/revert-xlib-map-to-image-requires-an-extents.patch
    (from rev 175888, 
cairo/trunk/revert-xlib-map-to-image-requires-an-extents.patch)
  cairo/repos/extra-x86_64/PKGBUILD
    (from rev 175888, cairo/trunk/PKGBUILD)
  
cairo/repos/extra-x86_64/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch
    (from rev 175888, 
cairo/trunk/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch)
  cairo/repos/extra-x86_64/revert-xlib-map-to-image-requires-an-extents.patch
    (from rev 175888, 
cairo/trunk/revert-xlib-map-to-image-requires-an-extents.patch)
Deleted:
  cairo/repos/extra-i686/PKGBUILD
  cairo/repos/extra-x86_64/PKGBUILD

--------------------------------------------------------------------------------+
 extra-i686/PKGBUILD                                                            
|   90 +++---
 extra-i686/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch   
|  144 ++++++++++
 extra-i686/revert-xlib-map-to-image-requires-an-extents.patch                  
|   24 +
 extra-x86_64/PKGBUILD                                                          
|   90 +++---
 extra-x86_64/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch 
|  144 ++++++++++
 extra-x86_64/revert-xlib-map-to-image-requires-an-extents.patch                
|   24 +
 6 files changed, 432 insertions(+), 84 deletions(-)

Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD 2013-01-23 11:37:23 UTC (rev 175888)
+++ extra-i686/PKGBUILD 2013-01-23 11:37:31 UTC (rev 175889)
@@ -1,42 +0,0 @@
-# $Id$
-# Maintainer: Jan de Groot <[email protected]>
-# Contributor: Brice Carpentier <[email protected]>
-
-pkgname=cairo
-pkgver=1.12.10
-pkgrel=1
-pkgdesc="Cairo vector graphics library"
-arch=(i686 x86_64)
-license=('LGPL' 'MPL')
-url="http://cairographics.org/";
-depends=('libpng' 'libxrender' 'libxext' 'fontconfig' 'pixman>=0.28.0' 'glib2' 
'sh')
-makedepends=('librsvg' 'poppler-glib' 'libspectre' 'gtk-doc' 'valgrind') # 
'libdrm')
-optdepends=('xcb-util: for XCB backend') # really needed?
-provides=('cairo-xcb')
-replaces=('cairo-xcb')
-options=('!libtool')
-source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz)
-sha1sums=('be06d5aaa272bbbd08380f71ca710d5612881493')
-
-build() {
-  cd "$srcdir/$pkgname-$pkgver"
-  ./configure --prefix=/usr \
-       --sysconfdir=/etc \
-       --localstatedir=/var \
-       --disable-static \
-       --enable-tee \
-       --disable-xlib-xcb \
-       # --enable-test-surfaces \ takes ages
-       #--enable-drm # breaks build
-  make
-}
-
-#check() {
-#  cd "$srcdir/$pkgname-$pkgver"
-#  make -k check || /bin/true # 162 Passed, 328 Failed [8 crashed, 10 
expected], 26 Skipped
-#}
-
-package() {
-  cd "$srcdir/$pkgname-$pkgver"
-  make DESTDIR="$pkgdir" install
-}

Copied: cairo/repos/extra-i686/PKGBUILD (from rev 175888, cairo/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD                         (rev 0)
+++ extra-i686/PKGBUILD 2013-01-23 11:37:31 UTC (rev 175889)
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Jan de Groot <[email protected]>
+# Contributor: Brice Carpentier <[email protected]>
+
+pkgname=cairo
+pkgver=1.12.10
+pkgrel=2
+pkgdesc="Cairo vector graphics library"
+arch=(i686 x86_64)
+license=('LGPL' 'MPL')
+url="http://cairographics.org/";
+depends=('libpng' 'libxrender' 'libxext' 'fontconfig' 'pixman>=0.28.0' 'glib2' 
'sh')
+makedepends=('librsvg' 'poppler-glib' 'libspectre' 'gtk-doc' 'valgrind') # 
'libdrm')
+optdepends=('xcb-util: for XCB backend') # really needed?
+provides=('cairo-xcb')
+replaces=('cairo-xcb')
+options=('!libtool')
+source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz
+       revert-xlib-map-to-image-requires-an-extents.patch
+       revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch)
+sha1sums=('be06d5aaa272bbbd08380f71ca710d5612881493'
+          '8bc096dd16a885ad041cb2137a64757f32d1cc88'
+          'fd8ffd9aba3679c344e4f25494f199a51b0ae62c')
+
+build() {
+  cd "$srcdir/$pkgname-$pkgver"
+  patch -Np1 -R -i ../revert-xlib-map-to-image-requires-an-extents.patch
+  patch -Np1 -R -i 
../revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch
+  ./configure --prefix=/usr \
+       --sysconfdir=/etc \
+       --localstatedir=/var \
+       --disable-static \
+       --enable-tee \
+       --disable-xlib-xcb \
+       # --enable-test-surfaces \ takes ages
+       #--enable-drm # breaks build
+  make
+}
+
+#check() {
+#  cd "$srcdir/$pkgname-$pkgver"
+#  make -k check || /bin/true # 162 Passed, 328 Failed [8 crashed, 10 
expected], 26 Skipped
+#}
+
+package() {
+  cd "$srcdir/$pkgname-$pkgver"
+  make DESTDIR="$pkgdir" install
+}

Copied: 
cairo/repos/extra-i686/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch
 (from rev 175888, 
cairo/trunk/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch)
===================================================================
--- 
extra-i686/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch    
                            (rev 0)
+++ 
extra-i686/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch    
    2013-01-23 11:37:31 UTC (rev 175889)
@@ -0,0 +1,144 @@
+From a73e7ff0186176bc82cd3ae1432c054c1fd3aebd Mon Sep 17 00:00:00 2001
+From: Chris Wilson <[email protected]>
+Date: Sun, 06 Jan 2013 11:29:27 +0000
+Subject: xlib: Simplify source creation by use of map-to-image
+
+We were open-coding the functionality of map-to-image inside the source
+creation routines. so refactor to actually use map-to-image instead.
+
+Signed-off-by: Chris Wilson <[email protected]>
+---
+diff --git a/src/cairo-xlib-source.c b/src/cairo-xlib-source.c
+index e312222..d08052a 100644
+--- a/src/cairo-xlib-source.c
++++ b/src/cairo-xlib-source.c
+@@ -898,9 +898,6 @@ surface_source (cairo_xlib_surface_t *dst,
+     cairo_surface_pattern_t local_pattern;
+     cairo_status_t status;
+     cairo_rectangle_int_t upload, limit;
+-    cairo_matrix_t m;
+-    pixman_format_code_t format;
+-    int draw_x, draw_y;
+ 
+     src = pattern->surface;
+     if (src->type == CAIRO_SURFACE_TYPE_IMAGE &&
+@@ -910,7 +907,6 @@ surface_source (cairo_xlib_surface_t *dst,
+ 
+       cairo_surface_reference (src);
+ 
+-prepare_shm_image:
+       proxy = malloc (sizeof(*proxy));
+       if (unlikely (proxy == NULL)) {
+           cairo_surface_destroy (src);
+@@ -954,46 +950,47 @@ prepare_shm_image:
+       }
+     }
+ 
+-    if (_cairo_surface_is_image (src))
+-      format = ((cairo_image_surface_t *)src)->pixman_format;
+-    else
+-      format = _cairo_format_to_pixman_format_code 
(_cairo_format_from_content (src->content));
+-    src = _cairo_xlib_surface_create_shm (dst, format,
+-                                        upload.width, upload.height);
+-    if (src == NULL) {
+-      if (_cairo_surface_is_image (pattern->surface)) {
+-          draw_x = upload.x;
+-          draw_y = upload.y;
+-          src = cairo_surface_reference (pattern->surface);
+-          goto skip_paint;
+-      }
+-
+-      src = _cairo_image_surface_create_with_pixman_format (NULL,
+-                                                            format,
+-                                                            upload.width,
+-                                                            upload.height,
+-                                                            0);
++    xsrc = (cairo_xlib_surface_t *)
++          _cairo_surface_create_similar_scratch (&dst->base,
++                                                 src->content,
++                                                 upload.width,
++                                                 upload.height);
++    if (xsrc->base.type != CAIRO_SURFACE_TYPE_XLIB) {
++      cairo_surface_destroy (src);
++      cairo_surface_destroy (&xsrc->base);
++      return None;
+     }
+ 
+-    _cairo_pattern_init_for_surface (&local_pattern, pattern->surface);
+-    cairo_matrix_init_translate (&local_pattern.base.matrix,
+-                               upload.x, upload.y);
++    if (_cairo_surface_is_image (src)) {
++      status = _cairo_xlib_surface_draw_image (xsrc, (cairo_image_surface_t 
*)src,
++                                               upload.x, upload.y,
++                                               upload.width, upload.height,
++                                               0, 0);
++    } else {
++      cairo_image_surface_t *image;
+ 
+-    status = _cairo_surface_paint (src,
+-                                 CAIRO_OPERATOR_SOURCE,
+-                                 &local_pattern.base,
+-                                 NULL);
+-    _cairo_pattern_fini (&local_pattern.base);
++      image = _cairo_surface_map_to_image (&xsrc->base, NULL);
+ 
+-    if (unlikely (status)) {
+-      cairo_surface_destroy (src);
+-      return _cairo_surface_create_in_error (status);
++      _cairo_pattern_init_for_surface (&local_pattern, pattern->surface);
++      cairo_matrix_init_translate (&local_pattern.base.matrix,
++                                   upload.x, upload.y);
++
++      status = _cairo_surface_paint (&image->base,
++                                     CAIRO_OPERATOR_SOURCE,
++                                     &local_pattern.base,
++                                     NULL);
++      _cairo_pattern_fini (&local_pattern.base);
++
++      status = _cairo_surface_unmap_image (&xsrc->base, image);
++      if (unlikely (status)) {
++          cairo_surface_destroy (src);
++          return _cairo_surface_create_in_error (status);
++      }
+     }
+ 
+-    draw_x = draw_y = 0;
+-skip_paint:
+     _cairo_pattern_init_static_copy (&local_pattern.base, &pattern->base);
+     if (upload.x | upload.y) {
++      cairo_matrix_t m;
+       cairo_matrix_init_translate (&m, -upload.x, -upload.y);
+       cairo_matrix_multiply (&local_pattern.base.matrix,
+                              &local_pattern.base.matrix,
+@@ -1001,29 +998,6 @@ skip_paint:
+     }
+ 
+     *src_x = *src_y = 0;
+-    if (src->device == dst->base.device &&
+-      _cairo_xlib_shm_surface_get_pixmap (src)) {
+-          pattern = &local_pattern;
+-          goto prepare_shm_image;
+-    }
+-
+-    xsrc = (cairo_xlib_surface_t *)
+-          _cairo_surface_create_similar_scratch (&dst->base,
+-                                                 src->content,
+-                                                 upload.width,
+-                                                 upload.height);
+-    if (xsrc->base.type != CAIRO_SURFACE_TYPE_XLIB) {
+-      cairo_surface_destroy (src);
+-      cairo_surface_destroy (&xsrc->base);
+-      return None;
+-    }
+-
+-    status = _cairo_xlib_surface_draw_image (xsrc, (cairo_image_surface_t 
*)src,
+-                                           draw_x, draw_y,
+-                                           upload.width, upload.height,
+-                                           0, 0);
+-    cairo_surface_destroy (src);
+-
+     _cairo_xlib_surface_ensure_picture (xsrc);
+     if (! picture_set_properties (xsrc->display,
+                                 xsrc->picture,
+--
+cgit v0.9.0.2-2-gbebe

Copied: 
cairo/repos/extra-i686/revert-xlib-map-to-image-requires-an-extents.patch (from 
rev 175888, cairo/trunk/revert-xlib-map-to-image-requires-an-extents.patch)
===================================================================
--- extra-i686/revert-xlib-map-to-image-requires-an-extents.patch               
                (rev 0)
+++ extra-i686/revert-xlib-map-to-image-requires-an-extents.patch       
2013-01-23 11:37:31 UTC (rev 175889)
@@ -0,0 +1,24 @@
+From dd20c1f4d6419238bbb37fb93a48986f83c6e6c2 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <[email protected]>
+Date: Wed, 09 Jan 2013 12:38:09 +0000
+Subject: xlib: map-to-image requires an extents
+
+Signed-off-by: Chris Wilson <[email protected]>
+---
+diff --git a/src/cairo-xlib-source.c b/src/cairo-xlib-source.c
+index d08052a..0689d82 100644
+--- a/src/cairo-xlib-source.c
++++ b/src/cairo-xlib-source.c
+@@ -968,8 +968,9 @@ surface_source (cairo_xlib_surface_t *dst,
+                                                0, 0);
+     } else {
+       cairo_image_surface_t *image;
++      cairo_rectangle_int_t map_extents = { 0,0, upload.width,upload.height };
+ 
+-      image = _cairo_surface_map_to_image (&xsrc->base, NULL);
++      image = _cairo_surface_map_to_image (&xsrc->base, &map_extents);
+ 
+       _cairo_pattern_init_for_surface (&local_pattern, pattern->surface);
+       cairo_matrix_init_translate (&local_pattern.base.matrix,
+--
+cgit v0.9.0.2-2-gbebe

Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD       2013-01-23 11:37:23 UTC (rev 175888)
+++ extra-x86_64/PKGBUILD       2013-01-23 11:37:31 UTC (rev 175889)
@@ -1,42 +0,0 @@
-# $Id$
-# Maintainer: Jan de Groot <[email protected]>
-# Contributor: Brice Carpentier <[email protected]>
-
-pkgname=cairo
-pkgver=1.12.10
-pkgrel=1
-pkgdesc="Cairo vector graphics library"
-arch=(i686 x86_64)
-license=('LGPL' 'MPL')
-url="http://cairographics.org/";
-depends=('libpng' 'libxrender' 'libxext' 'fontconfig' 'pixman>=0.28.0' 'glib2' 
'sh')
-makedepends=('librsvg' 'poppler-glib' 'libspectre' 'gtk-doc' 'valgrind') # 
'libdrm')
-optdepends=('xcb-util: for XCB backend') # really needed?
-provides=('cairo-xcb')
-replaces=('cairo-xcb')
-options=('!libtool')
-source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz)
-sha1sums=('be06d5aaa272bbbd08380f71ca710d5612881493')
-
-build() {
-  cd "$srcdir/$pkgname-$pkgver"
-  ./configure --prefix=/usr \
-       --sysconfdir=/etc \
-       --localstatedir=/var \
-       --disable-static \
-       --enable-tee \
-       --disable-xlib-xcb \
-       # --enable-test-surfaces \ takes ages
-       #--enable-drm # breaks build
-  make
-}
-
-#check() {
-#  cd "$srcdir/$pkgname-$pkgver"
-#  make -k check || /bin/true # 162 Passed, 328 Failed [8 crashed, 10 
expected], 26 Skipped
-#}
-
-package() {
-  cd "$srcdir/$pkgname-$pkgver"
-  make DESTDIR="$pkgdir" install
-}

Copied: cairo/repos/extra-x86_64/PKGBUILD (from rev 175888, 
cairo/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD                               (rev 0)
+++ extra-x86_64/PKGBUILD       2013-01-23 11:37:31 UTC (rev 175889)
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Jan de Groot <[email protected]>
+# Contributor: Brice Carpentier <[email protected]>
+
+pkgname=cairo
+pkgver=1.12.10
+pkgrel=2
+pkgdesc="Cairo vector graphics library"
+arch=(i686 x86_64)
+license=('LGPL' 'MPL')
+url="http://cairographics.org/";
+depends=('libpng' 'libxrender' 'libxext' 'fontconfig' 'pixman>=0.28.0' 'glib2' 
'sh')
+makedepends=('librsvg' 'poppler-glib' 'libspectre' 'gtk-doc' 'valgrind') # 
'libdrm')
+optdepends=('xcb-util: for XCB backend') # really needed?
+provides=('cairo-xcb')
+replaces=('cairo-xcb')
+options=('!libtool')
+source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz
+       revert-xlib-map-to-image-requires-an-extents.patch
+       revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch)
+sha1sums=('be06d5aaa272bbbd08380f71ca710d5612881493'
+          '8bc096dd16a885ad041cb2137a64757f32d1cc88'
+          'fd8ffd9aba3679c344e4f25494f199a51b0ae62c')
+
+build() {
+  cd "$srcdir/$pkgname-$pkgver"
+  patch -Np1 -R -i ../revert-xlib-map-to-image-requires-an-extents.patch
+  patch -Np1 -R -i 
../revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch
+  ./configure --prefix=/usr \
+       --sysconfdir=/etc \
+       --localstatedir=/var \
+       --disable-static \
+       --enable-tee \
+       --disable-xlib-xcb \
+       # --enable-test-surfaces \ takes ages
+       #--enable-drm # breaks build
+  make
+}
+
+#check() {
+#  cd "$srcdir/$pkgname-$pkgver"
+#  make -k check || /bin/true # 162 Passed, 328 Failed [8 crashed, 10 
expected], 26 Skipped
+#}
+
+package() {
+  cd "$srcdir/$pkgname-$pkgver"
+  make DESTDIR="$pkgdir" install
+}

Copied: 
cairo/repos/extra-x86_64/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch
 (from rev 175888, 
cairo/trunk/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch)
===================================================================
--- 
extra-x86_64/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch  
                            (rev 0)
+++ 
extra-x86_64/revert-xlib-Simplify-source-creation-by-use-of-map-to-image.patch  
    2013-01-23 11:37:31 UTC (rev 175889)
@@ -0,0 +1,144 @@
+From a73e7ff0186176bc82cd3ae1432c054c1fd3aebd Mon Sep 17 00:00:00 2001
+From: Chris Wilson <[email protected]>
+Date: Sun, 06 Jan 2013 11:29:27 +0000
+Subject: xlib: Simplify source creation by use of map-to-image
+
+We were open-coding the functionality of map-to-image inside the source
+creation routines. so refactor to actually use map-to-image instead.
+
+Signed-off-by: Chris Wilson <[email protected]>
+---
+diff --git a/src/cairo-xlib-source.c b/src/cairo-xlib-source.c
+index e312222..d08052a 100644
+--- a/src/cairo-xlib-source.c
++++ b/src/cairo-xlib-source.c
+@@ -898,9 +898,6 @@ surface_source (cairo_xlib_surface_t *dst,
+     cairo_surface_pattern_t local_pattern;
+     cairo_status_t status;
+     cairo_rectangle_int_t upload, limit;
+-    cairo_matrix_t m;
+-    pixman_format_code_t format;
+-    int draw_x, draw_y;
+ 
+     src = pattern->surface;
+     if (src->type == CAIRO_SURFACE_TYPE_IMAGE &&
+@@ -910,7 +907,6 @@ surface_source (cairo_xlib_surface_t *dst,
+ 
+       cairo_surface_reference (src);
+ 
+-prepare_shm_image:
+       proxy = malloc (sizeof(*proxy));
+       if (unlikely (proxy == NULL)) {
+           cairo_surface_destroy (src);
+@@ -954,46 +950,47 @@ prepare_shm_image:
+       }
+     }
+ 
+-    if (_cairo_surface_is_image (src))
+-      format = ((cairo_image_surface_t *)src)->pixman_format;
+-    else
+-      format = _cairo_format_to_pixman_format_code 
(_cairo_format_from_content (src->content));
+-    src = _cairo_xlib_surface_create_shm (dst, format,
+-                                        upload.width, upload.height);
+-    if (src == NULL) {
+-      if (_cairo_surface_is_image (pattern->surface)) {
+-          draw_x = upload.x;
+-          draw_y = upload.y;
+-          src = cairo_surface_reference (pattern->surface);
+-          goto skip_paint;
+-      }
+-
+-      src = _cairo_image_surface_create_with_pixman_format (NULL,
+-                                                            format,
+-                                                            upload.width,
+-                                                            upload.height,
+-                                                            0);
++    xsrc = (cairo_xlib_surface_t *)
++          _cairo_surface_create_similar_scratch (&dst->base,
++                                                 src->content,
++                                                 upload.width,
++                                                 upload.height);
++    if (xsrc->base.type != CAIRO_SURFACE_TYPE_XLIB) {
++      cairo_surface_destroy (src);
++      cairo_surface_destroy (&xsrc->base);
++      return None;
+     }
+ 
+-    _cairo_pattern_init_for_surface (&local_pattern, pattern->surface);
+-    cairo_matrix_init_translate (&local_pattern.base.matrix,
+-                               upload.x, upload.y);
++    if (_cairo_surface_is_image (src)) {
++      status = _cairo_xlib_surface_draw_image (xsrc, (cairo_image_surface_t 
*)src,
++                                               upload.x, upload.y,
++                                               upload.width, upload.height,
++                                               0, 0);
++    } else {
++      cairo_image_surface_t *image;
+ 
+-    status = _cairo_surface_paint (src,
+-                                 CAIRO_OPERATOR_SOURCE,
+-                                 &local_pattern.base,
+-                                 NULL);
+-    _cairo_pattern_fini (&local_pattern.base);
++      image = _cairo_surface_map_to_image (&xsrc->base, NULL);
+ 
+-    if (unlikely (status)) {
+-      cairo_surface_destroy (src);
+-      return _cairo_surface_create_in_error (status);
++      _cairo_pattern_init_for_surface (&local_pattern, pattern->surface);
++      cairo_matrix_init_translate (&local_pattern.base.matrix,
++                                   upload.x, upload.y);
++
++      status = _cairo_surface_paint (&image->base,
++                                     CAIRO_OPERATOR_SOURCE,
++                                     &local_pattern.base,
++                                     NULL);
++      _cairo_pattern_fini (&local_pattern.base);
++
++      status = _cairo_surface_unmap_image (&xsrc->base, image);
++      if (unlikely (status)) {
++          cairo_surface_destroy (src);
++          return _cairo_surface_create_in_error (status);
++      }
+     }
+ 
+-    draw_x = draw_y = 0;
+-skip_paint:
+     _cairo_pattern_init_static_copy (&local_pattern.base, &pattern->base);
+     if (upload.x | upload.y) {
++      cairo_matrix_t m;
+       cairo_matrix_init_translate (&m, -upload.x, -upload.y);
+       cairo_matrix_multiply (&local_pattern.base.matrix,
+                              &local_pattern.base.matrix,
+@@ -1001,29 +998,6 @@ skip_paint:
+     }
+ 
+     *src_x = *src_y = 0;
+-    if (src->device == dst->base.device &&
+-      _cairo_xlib_shm_surface_get_pixmap (src)) {
+-          pattern = &local_pattern;
+-          goto prepare_shm_image;
+-    }
+-
+-    xsrc = (cairo_xlib_surface_t *)
+-          _cairo_surface_create_similar_scratch (&dst->base,
+-                                                 src->content,
+-                                                 upload.width,
+-                                                 upload.height);
+-    if (xsrc->base.type != CAIRO_SURFACE_TYPE_XLIB) {
+-      cairo_surface_destroy (src);
+-      cairo_surface_destroy (&xsrc->base);
+-      return None;
+-    }
+-
+-    status = _cairo_xlib_surface_draw_image (xsrc, (cairo_image_surface_t 
*)src,
+-                                           draw_x, draw_y,
+-                                           upload.width, upload.height,
+-                                           0, 0);
+-    cairo_surface_destroy (src);
+-
+     _cairo_xlib_surface_ensure_picture (xsrc);
+     if (! picture_set_properties (xsrc->display,
+                                 xsrc->picture,
+--
+cgit v0.9.0.2-2-gbebe

Copied: 
cairo/repos/extra-x86_64/revert-xlib-map-to-image-requires-an-extents.patch 
(from rev 175888, 
cairo/trunk/revert-xlib-map-to-image-requires-an-extents.patch)
===================================================================
--- extra-x86_64/revert-xlib-map-to-image-requires-an-extents.patch             
                (rev 0)
+++ extra-x86_64/revert-xlib-map-to-image-requires-an-extents.patch     
2013-01-23 11:37:31 UTC (rev 175889)
@@ -0,0 +1,24 @@
+From dd20c1f4d6419238bbb37fb93a48986f83c6e6c2 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <[email protected]>
+Date: Wed, 09 Jan 2013 12:38:09 +0000
+Subject: xlib: map-to-image requires an extents
+
+Signed-off-by: Chris Wilson <[email protected]>
+---
+diff --git a/src/cairo-xlib-source.c b/src/cairo-xlib-source.c
+index d08052a..0689d82 100644
+--- a/src/cairo-xlib-source.c
++++ b/src/cairo-xlib-source.c
+@@ -968,8 +968,9 @@ surface_source (cairo_xlib_surface_t *dst,
+                                                0, 0);
+     } else {
+       cairo_image_surface_t *image;
++      cairo_rectangle_int_t map_extents = { 0,0, upload.width,upload.height };
+ 
+-      image = _cairo_surface_map_to_image (&xsrc->base, NULL);
++      image = _cairo_surface_map_to_image (&xsrc->base, &map_extents);
+ 
+       _cairo_pattern_init_for_surface (&local_pattern, pattern->surface);
+       cairo_matrix_init_translate (&local_pattern.base.matrix,
+--
+cgit v0.9.0.2-2-gbebe

Reply via email to