Date: Thursday, June 27, 2013 @ 11:01:12
  Author: lcarlier
Revision: 188960

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

Added:
  xf86-video-intel/repos/extra-i686/PKGBUILD
    (from rev 188959, xf86-video-intel/trunk/PKGBUILD)
  xf86-video-intel/repos/extra-i686/firefox_image_fix.diff
    (from rev 188959, xf86-video-intel/trunk/firefox_image_fix.diff)
  xf86-video-intel/repos/extra-i686/pd_crash_X_fix.diff
    (from rev 188959, xf86-video-intel/trunk/pd_crash_X_fix.diff)
  xf86-video-intel/repos/extra-i686/xf86-video-intel.install
    (from rev 188959, xf86-video-intel/trunk/xf86-video-intel.install)
  xf86-video-intel/repos/extra-x86_64/PKGBUILD
    (from rev 188959, xf86-video-intel/trunk/PKGBUILD)
  xf86-video-intel/repos/extra-x86_64/firefox_image_fix.diff
    (from rev 188959, xf86-video-intel/trunk/firefox_image_fix.diff)
  xf86-video-intel/repos/extra-x86_64/pd_crash_X_fix.diff
    (from rev 188959, xf86-video-intel/trunk/pd_crash_X_fix.diff)
  xf86-video-intel/repos/extra-x86_64/xf86-video-intel.install
    (from rev 188959, xf86-video-intel/trunk/xf86-video-intel.install)
Deleted:
  xf86-video-intel/repos/extra-i686/PKGBUILD
  xf86-video-intel/repos/extra-i686/firefox_image_fix.diff
  xf86-video-intel/repos/extra-i686/xf86-video-intel.install
  xf86-video-intel/repos/extra-x86_64/PKGBUILD
  xf86-video-intel/repos/extra-x86_64/firefox_image_fix.diff
  xf86-video-intel/repos/extra-x86_64/xf86-video-intel.install

---------------------------------------+
 /PKGBUILD                             |   98 +++++++++++++++++++++
 /firefox_image_fix.diff               |   60 ++++++++++++
 /xf86-video-intel.install             |   16 +++
 extra-i686/PKGBUILD                   |   45 ---------
 extra-i686/firefox_image_fix.diff     |   30 ------
 extra-i686/pd_crash_X_fix.diff        |  148 ++++++++++++++++++++++++++++++++
 extra-i686/xf86-video-intel.install   |    8 -
 extra-x86_64/PKGBUILD                 |   45 ---------
 extra-x86_64/firefox_image_fix.diff   |   30 ------
 extra-x86_64/pd_crash_X_fix.diff      |  148 ++++++++++++++++++++++++++++++++
 extra-x86_64/xf86-video-intel.install |    8 -
 11 files changed, 470 insertions(+), 166 deletions(-)

Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD 2013-06-27 09:00:56 UTC (rev 188959)
+++ extra-i686/PKGBUILD 2013-06-27 09:01:12 UTC (rev 188960)
@@ -1,45 +0,0 @@
-# $Id$
-# Maintainer: AndyRTR <andy...@archlinux.org>
-# Maintainer: Jan de Groot <j...@archlinux.org>
-
-pkgname=xf86-video-intel
-pkgver=2.21.10
-pkgrel=2
-arch=(i686 x86_64)
-url="http://xorg.freedesktop.org/";
-license=('custom')
-install=$pkgname.install
-pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
-depends=('intel-dri' 'libxvmc' 'xcb-util>=0.3.9' 'systemd')
-makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=14' 'resourceproto' 
'scrnsaverproto' 'libx11' 'libxrender')
-replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-conflicts=('xorg-server<1.14.0' 'X-ABI-VIDEODRV_VERSION<14' 
'X-ABI-VIDEODRV_VERSION>=15'
-           'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 
'xf86-video-intel-legacy')
-options=('!libtool')
-groups=('xorg-drivers' 'xorg')
-source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2
-        firefox_image_fix.diff)
-sha256sums=('7a4bcad83e8153ab1eec46dfee2412b7b20d087f438af4bf97f460f67c5ca9b6'
-            '33465c66b0a4bca2dfd242c86cb8cb882fbf841e1c2da632a5aa76f9d04b84d1')
-
-build() {
-  cd "${srcdir}/${pkgname}-${pkgver}"
-
-  # fix image issues in FF+TB, 
https://bugs.freedesktop.org/show_bug.cgi?id=66059
-  patch -Np1 -i ${srcdir}/firefox_image_fix.diff
-
-  ./configure --prefix=/usr \
-    --enable-dri
-
-  make
-}
-
-package() {
-  cd "${srcdir}/${pkgname}-${pkgver}"
-
-  make DESTDIR="${pkgdir}" install
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
-  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
-}

Copied: xf86-video-intel/repos/extra-i686/PKGBUILD (from rev 188959, 
xf86-video-intel/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD                         (rev 0)
+++ extra-i686/PKGBUILD 2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,49 @@
+# $Id$
+# Maintainer: AndyRTR <andy...@archlinux.org>
+# Maintainer: Jan de Groot <j...@archlinux.org>
+
+pkgname=xf86-video-intel
+pkgver=2.21.10
+pkgrel=3
+arch=(i686 x86_64)
+url="http://xorg.freedesktop.org/";
+license=('custom')
+install=$pkgname.install
+pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
+depends=('intel-dri' 'libxvmc' 'xcb-util>=0.3.9' 'systemd')
+makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=14' 'resourceproto' 
'scrnsaverproto' 'libx11' 'libxrender')
+replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+conflicts=('xorg-server<1.14.0' 'X-ABI-VIDEODRV_VERSION<14' 
'X-ABI-VIDEODRV_VERSION>=15'
+           'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 
'xf86-video-intel-legacy')
+options=('!libtool')
+groups=('xorg-drivers' 'xorg')
+source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2
+        firefox_image_fix.diff
+        pd_crash_X_fix.diff)
+sha256sums=('7a4bcad83e8153ab1eec46dfee2412b7b20d087f438af4bf97f460f67c5ca9b6'
+            '33465c66b0a4bca2dfd242c86cb8cb882fbf841e1c2da632a5aa76f9d04b84d1'
+            'cfc83edf018408d9d5b7f5bb329ea364a203eb12bdf537270b89ad85203fbc44')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  # fix image issues in FF+TB, 
https://bugs.freedesktop.org/show_bug.cgi?id=66059
+  patch -Np1 -i ${srcdir}/firefox_image_fix.diff
+  # fix X crash with pd, https://bugs.freedesktop.org/show_bug.cgi?id=66104
+  patch -Np1 -i ${srcdir}/pd_crash_X_fix.diff
+
+  ./configure --prefix=/usr \
+    --enable-dri
+
+  make
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  make DESTDIR="${pkgdir}" install
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
+  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
+}

Deleted: extra-i686/firefox_image_fix.diff
===================================================================
--- extra-i686/firefox_image_fix.diff   2013-06-27 09:00:56 UTC (rev 188959)
+++ extra-i686/firefox_image_fix.diff   2013-06-27 09:01:12 UTC (rev 188960)
@@ -1,30 +0,0 @@
-From 77ddadf0ec6b867a0638660bf06c82ad31577795 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <ch...@chris-wilson.co.uk>
-Date: Sun, 23 Jun 2013 21:01:12 +0000
-Subject: sna: Clear 'clear' hint upon uploading into tiled
-
-Fixes regression from
-commit 53c113c3cc2f8527debc185f0819139ca8637637 [2.21.10]
-Author: Chris Wilson <ch...@chris-wilson.co.uk>
-Date:   Fri Jun 21 19:27:24 2013 +0100
-
-    sna: Allow PutImage to write inplace using manual tiling
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66059
-Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
----
-diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
-index 0994c33..43d6a67 100644
---- a/src/sna/sna_accel.c
-+++ b/src/sna/sna_accel.c
-@@ -4000,6 +4000,8 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region,
-       } while (--n);
-       __kgem_bo_unmap__cpu(&sna->kgem, priv->gpu_bo, dst);
- 
-+      priv->clear = false;
-+      priv->cpu = false;
-       return true;
- }
- 
---
-cgit v0.9.0.2-2-gbebe

Copied: xf86-video-intel/repos/extra-i686/firefox_image_fix.diff (from rev 
188959, xf86-video-intel/trunk/firefox_image_fix.diff)
===================================================================
--- extra-i686/firefox_image_fix.diff                           (rev 0)
+++ extra-i686/firefox_image_fix.diff   2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,30 @@
+From 77ddadf0ec6b867a0638660bf06c82ad31577795 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <ch...@chris-wilson.co.uk>
+Date: Sun, 23 Jun 2013 21:01:12 +0000
+Subject: sna: Clear 'clear' hint upon uploading into tiled
+
+Fixes regression from
+commit 53c113c3cc2f8527debc185f0819139ca8637637 [2.21.10]
+Author: Chris Wilson <ch...@chris-wilson.co.uk>
+Date:   Fri Jun 21 19:27:24 2013 +0100
+
+    sna: Allow PutImage to write inplace using manual tiling
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66059
+Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
+---
+diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
+index 0994c33..43d6a67 100644
+--- a/src/sna/sna_accel.c
++++ b/src/sna/sna_accel.c
+@@ -4000,6 +4000,8 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region,
+       } while (--n);
+       __kgem_bo_unmap__cpu(&sna->kgem, priv->gpu_bo, dst);
+ 
++      priv->clear = false;
++      priv->cpu = false;
+       return true;
+ }
+ 
+--
+cgit v0.9.0.2-2-gbebe

Copied: xf86-video-intel/repos/extra-i686/pd_crash_X_fix.diff (from rev 188959, 
xf86-video-intel/trunk/pd_crash_X_fix.diff)
===================================================================
--- extra-i686/pd_crash_X_fix.diff                              (rev 0)
+++ extra-i686/pd_crash_X_fix.diff      2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,148 @@
+From c88d911d4209a8ede5ec705ad925383c69182977 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <ch...@chris-wilson.co.uk>
+Date: Mon, 24 Jun 2013 14:30:00 +0100
+Subject: [PATCH] sna: Initialise gc->ops->PolyPoint for miWideDash
+
+The miWideDash may also call PolyPoint rather than emit spans, so make
+sure that we correctly prepare sna_poly_point before calling mi*.
+
+Reported-by: Tobias Brodel <toby.james...@gmail.com>
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66104
+Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
+---
+ src/sna/sna_accel.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++------
+ 1 file changed, 54 insertions(+), 6 deletions(-)
+
+diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
+index 43d6a67..a3e4ed4 100644
+--- a/src/sna/sna_accel.c
++++ b/src/sna/sna_accel.c
+@@ -5750,6 +5750,39 @@ sna_poly_point__fill_clip_boxes(DrawablePtr drawable, 
GCPtr gc,
+ }
+ 
+ static void
++sna_poly_point__dash(DrawablePtr drawable, GCPtr gc,
++                   int mode, int n, DDXPointPtr pt)
++{
++      struct sna_fill_spans *data = sna_gc(gc)->priv;
++      struct sna_fill_op *op = data->op;
++
++      if (op->base.u.blt.pixel == gc->fgPixel)
++              sna_poly_point__fill(drawable, gc, mode, n, pt);
++}
++
++static void
++sna_poly_point__dash_clip_extents(DrawablePtr drawable, GCPtr gc,
++                                int mode, int n, DDXPointPtr pt)
++{
++      struct sna_fill_spans *data = sna_gc(gc)->priv;
++      struct sna_fill_op *op = data->op;
++
++      if (op->base.u.blt.pixel == gc->fgPixel)
++              sna_poly_point__fill_clip_extents(drawable, gc, mode, n, pt);
++}
++
++static void
++sna_poly_point__dash_clip_boxes(DrawablePtr drawable, GCPtr gc,
++                                int mode, int n, DDXPointPtr pt)
++{
++      struct sna_fill_spans *data = sna_gc(gc)->priv;
++      struct sna_fill_op *op = data->op;
++
++      if (op->base.u.blt.pixel == gc->fgPixel)
++              sna_poly_point__fill_clip_boxes(drawable, gc, mode, n, pt);
++}
++
++static void
+ sna_fill_spans__fill(DrawablePtr drawable,
+                    GCPtr gc, int n,
+                    DDXPointPtr pt, int *width, int sorted)
+@@ -8175,16 +8208,20 @@ spans_fallback:
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_offset;
+                                       else
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill;
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill;
+                               } else {
+                                       region_maybe_clip(&data.region,
+                                                         gc->pCompositeClip);
+                                       if (RegionNil(&data.region))
+                                               return;
+ 
+-                                      if (region_is_singular(&data.region))
++                                      if (region_is_singular(&data.region)) {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_extents;
+-                                      else
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_extents;
++                                      } else {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_boxes;
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_boxes;
++                                      }
+                               }
+                               assert(gc->miTranslate);
+ 
+@@ -8200,16 +8237,20 @@ spans_fallback:
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash_offset;
+                                       else
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash;
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__dash;
+                               } else {
+                                       region_maybe_clip(&data.region,
+                                                         gc->pCompositeClip);
+                                       if (RegionNil(&data.region))
+                                               return;
+ 
+-                                      if (region_is_singular(&data.region))
++                                      if (region_is_singular(&data.region)) {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash_clip_extents;
+-                                      else
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__dash_clip_extents;
++                                      } else {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash_clip_boxes;
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__dash_clip_boxes;
++                                      }
+                               }
+                               assert(gc->miTranslate);
+ 
+@@ -8239,6 +8280,7 @@ spans_fallback:
+                        */
+                       sna_gc_ops__tmp.FillSpans = sna_fill_spans__gpu;
+                       sna_gc_ops__tmp.PolyFillRect = sna_poly_fill_rect__gpu;
++                      sna_gc_ops__tmp.PolyPoint = sna_poly_point__gpu;
+                       gc->ops = &sna_gc_ops__tmp;
+ 
+                       switch (gc->lineStyle) {
+@@ -9083,16 +9125,20 @@ spans_fallback:
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_offset;
+                               else
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill;
++                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill;
+                       } else {
+                               region_maybe_clip(&data.region,
+                                                 gc->pCompositeClip);
+                               if (RegionNil(&data.region))
+                                       return;
+ 
+-                              if (region_is_singular(&data.region))
++                              if (region_is_singular(&data.region)) {
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_extents;
+-                              else
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_extents;
++                              } else {
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_boxes;
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_boxes;
++                              }
+                       }
+                       assert(gc->miTranslate);
+                       gc->ops = &sna_gc_ops__tmp;
+@@ -9103,6 +9149,8 @@ spans_fallback:
+                       fill.done(data.sna, &fill);
+               } else {
+                       sna_gc_ops__tmp.FillSpans = sna_fill_spans__gpu;
++                      sna_gc_ops__tmp.PolyFillRect = sna_poly_fill_rect__gpu;
++                      sna_gc_ops__tmp.PolyPoint = sna_poly_point__gpu;
+                       gc->ops = &sna_gc_ops__tmp;
+ 
+                       for (i = 0; i < n; i++)
+-- 
+1.8.3.1
+

Deleted: extra-i686/xf86-video-intel.install
===================================================================
--- extra-i686/xf86-video-intel.install 2013-06-27 09:00:56 UTC (rev 188959)
+++ extra-i686/xf86-video-intel.install 2013-06-27 09:01:12 UTC (rev 188960)
@@ -1,8 +0,0 @@
-post_install() {
-  echo ">>> This driver now allows to switch"
-  echo ">>> between sna/uxa acceleration methods."
-  echo ">>> Add to the device section in /etc/X11/xorg.conf"
-  echo ">>>   Option \"AccelMethod\" \"sna\""
-  echo ">>> use uxa method if you run into trouble with sna."
-}
-

Copied: xf86-video-intel/repos/extra-i686/xf86-video-intel.install (from rev 
188959, xf86-video-intel/trunk/xf86-video-intel.install)
===================================================================
--- extra-i686/xf86-video-intel.install                         (rev 0)
+++ extra-i686/xf86-video-intel.install 2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,8 @@
+post_install() {
+  echo ">>> This driver now allows to switch"
+  echo ">>> between sna/uxa acceleration methods."
+  echo ">>> Add to the device section in /etc/X11/xorg.conf"
+  echo ">>>   Option \"AccelMethod\" \"sna\""
+  echo ">>> use uxa method if you run into trouble with sna."
+}
+

Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD       2013-06-27 09:00:56 UTC (rev 188959)
+++ extra-x86_64/PKGBUILD       2013-06-27 09:01:12 UTC (rev 188960)
@@ -1,45 +0,0 @@
-# $Id$
-# Maintainer: AndyRTR <andy...@archlinux.org>
-# Maintainer: Jan de Groot <j...@archlinux.org>
-
-pkgname=xf86-video-intel
-pkgver=2.21.10
-pkgrel=2
-arch=(i686 x86_64)
-url="http://xorg.freedesktop.org/";
-license=('custom')
-install=$pkgname.install
-pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
-depends=('intel-dri' 'libxvmc' 'xcb-util>=0.3.9' 'systemd')
-makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=14' 'resourceproto' 
'scrnsaverproto' 'libx11' 'libxrender')
-replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-conflicts=('xorg-server<1.14.0' 'X-ABI-VIDEODRV_VERSION<14' 
'X-ABI-VIDEODRV_VERSION>=15'
-           'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 
'xf86-video-intel-legacy')
-options=('!libtool')
-groups=('xorg-drivers' 'xorg')
-source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2
-        firefox_image_fix.diff)
-sha256sums=('7a4bcad83e8153ab1eec46dfee2412b7b20d087f438af4bf97f460f67c5ca9b6'
-            '33465c66b0a4bca2dfd242c86cb8cb882fbf841e1c2da632a5aa76f9d04b84d1')
-
-build() {
-  cd "${srcdir}/${pkgname}-${pkgver}"
-
-  # fix image issues in FF+TB, 
https://bugs.freedesktop.org/show_bug.cgi?id=66059
-  patch -Np1 -i ${srcdir}/firefox_image_fix.diff
-
-  ./configure --prefix=/usr \
-    --enable-dri
-
-  make
-}
-
-package() {
-  cd "${srcdir}/${pkgname}-${pkgver}"
-
-  make DESTDIR="${pkgdir}" install
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
-  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
-}

Copied: xf86-video-intel/repos/extra-x86_64/PKGBUILD (from rev 188959, 
xf86-video-intel/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD                               (rev 0)
+++ extra-x86_64/PKGBUILD       2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,49 @@
+# $Id$
+# Maintainer: AndyRTR <andy...@archlinux.org>
+# Maintainer: Jan de Groot <j...@archlinux.org>
+
+pkgname=xf86-video-intel
+pkgver=2.21.10
+pkgrel=3
+arch=(i686 x86_64)
+url="http://xorg.freedesktop.org/";
+license=('custom')
+install=$pkgname.install
+pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
+depends=('intel-dri' 'libxvmc' 'xcb-util>=0.3.9' 'systemd')
+makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=14' 'resourceproto' 
'scrnsaverproto' 'libx11' 'libxrender')
+replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+conflicts=('xorg-server<1.14.0' 'X-ABI-VIDEODRV_VERSION<14' 
'X-ABI-VIDEODRV_VERSION>=15'
+           'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 
'xf86-video-intel-legacy')
+options=('!libtool')
+groups=('xorg-drivers' 'xorg')
+source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2
+        firefox_image_fix.diff
+        pd_crash_X_fix.diff)
+sha256sums=('7a4bcad83e8153ab1eec46dfee2412b7b20d087f438af4bf97f460f67c5ca9b6'
+            '33465c66b0a4bca2dfd242c86cb8cb882fbf841e1c2da632a5aa76f9d04b84d1'
+            'cfc83edf018408d9d5b7f5bb329ea364a203eb12bdf537270b89ad85203fbc44')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  # fix image issues in FF+TB, 
https://bugs.freedesktop.org/show_bug.cgi?id=66059
+  patch -Np1 -i ${srcdir}/firefox_image_fix.diff
+  # fix X crash with pd, https://bugs.freedesktop.org/show_bug.cgi?id=66104
+  patch -Np1 -i ${srcdir}/pd_crash_X_fix.diff
+
+  ./configure --prefix=/usr \
+    --enable-dri
+
+  make
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  make DESTDIR="${pkgdir}" install
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
+  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
+}

Deleted: extra-x86_64/firefox_image_fix.diff
===================================================================
--- extra-x86_64/firefox_image_fix.diff 2013-06-27 09:00:56 UTC (rev 188959)
+++ extra-x86_64/firefox_image_fix.diff 2013-06-27 09:01:12 UTC (rev 188960)
@@ -1,30 +0,0 @@
-From 77ddadf0ec6b867a0638660bf06c82ad31577795 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <ch...@chris-wilson.co.uk>
-Date: Sun, 23 Jun 2013 21:01:12 +0000
-Subject: sna: Clear 'clear' hint upon uploading into tiled
-
-Fixes regression from
-commit 53c113c3cc2f8527debc185f0819139ca8637637 [2.21.10]
-Author: Chris Wilson <ch...@chris-wilson.co.uk>
-Date:   Fri Jun 21 19:27:24 2013 +0100
-
-    sna: Allow PutImage to write inplace using manual tiling
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66059
-Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
----
-diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
-index 0994c33..43d6a67 100644
---- a/src/sna/sna_accel.c
-+++ b/src/sna/sna_accel.c
-@@ -4000,6 +4000,8 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region,
-       } while (--n);
-       __kgem_bo_unmap__cpu(&sna->kgem, priv->gpu_bo, dst);
- 
-+      priv->clear = false;
-+      priv->cpu = false;
-       return true;
- }
- 
---
-cgit v0.9.0.2-2-gbebe

Copied: xf86-video-intel/repos/extra-x86_64/firefox_image_fix.diff (from rev 
188959, xf86-video-intel/trunk/firefox_image_fix.diff)
===================================================================
--- extra-x86_64/firefox_image_fix.diff                         (rev 0)
+++ extra-x86_64/firefox_image_fix.diff 2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,30 @@
+From 77ddadf0ec6b867a0638660bf06c82ad31577795 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <ch...@chris-wilson.co.uk>
+Date: Sun, 23 Jun 2013 21:01:12 +0000
+Subject: sna: Clear 'clear' hint upon uploading into tiled
+
+Fixes regression from
+commit 53c113c3cc2f8527debc185f0819139ca8637637 [2.21.10]
+Author: Chris Wilson <ch...@chris-wilson.co.uk>
+Date:   Fri Jun 21 19:27:24 2013 +0100
+
+    sna: Allow PutImage to write inplace using manual tiling
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66059
+Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
+---
+diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
+index 0994c33..43d6a67 100644
+--- a/src/sna/sna_accel.c
++++ b/src/sna/sna_accel.c
+@@ -4000,6 +4000,8 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region,
+       } while (--n);
+       __kgem_bo_unmap__cpu(&sna->kgem, priv->gpu_bo, dst);
+ 
++      priv->clear = false;
++      priv->cpu = false;
+       return true;
+ }
+ 
+--
+cgit v0.9.0.2-2-gbebe

Copied: xf86-video-intel/repos/extra-x86_64/pd_crash_X_fix.diff (from rev 
188959, xf86-video-intel/trunk/pd_crash_X_fix.diff)
===================================================================
--- extra-x86_64/pd_crash_X_fix.diff                            (rev 0)
+++ extra-x86_64/pd_crash_X_fix.diff    2013-06-27 09:01:12 UTC (rev 188960)
@@ -0,0 +1,148 @@
+From c88d911d4209a8ede5ec705ad925383c69182977 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <ch...@chris-wilson.co.uk>
+Date: Mon, 24 Jun 2013 14:30:00 +0100
+Subject: [PATCH] sna: Initialise gc->ops->PolyPoint for miWideDash
+
+The miWideDash may also call PolyPoint rather than emit spans, so make
+sure that we correctly prepare sna_poly_point before calling mi*.
+
+Reported-by: Tobias Brodel <toby.james...@gmail.com>
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66104
+Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
+---
+ src/sna/sna_accel.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++------
+ 1 file changed, 54 insertions(+), 6 deletions(-)
+
+diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
+index 43d6a67..a3e4ed4 100644
+--- a/src/sna/sna_accel.c
++++ b/src/sna/sna_accel.c
+@@ -5750,6 +5750,39 @@ sna_poly_point__fill_clip_boxes(DrawablePtr drawable, 
GCPtr gc,
+ }
+ 
+ static void
++sna_poly_point__dash(DrawablePtr drawable, GCPtr gc,
++                   int mode, int n, DDXPointPtr pt)
++{
++      struct sna_fill_spans *data = sna_gc(gc)->priv;
++      struct sna_fill_op *op = data->op;
++
++      if (op->base.u.blt.pixel == gc->fgPixel)
++              sna_poly_point__fill(drawable, gc, mode, n, pt);
++}
++
++static void
++sna_poly_point__dash_clip_extents(DrawablePtr drawable, GCPtr gc,
++                                int mode, int n, DDXPointPtr pt)
++{
++      struct sna_fill_spans *data = sna_gc(gc)->priv;
++      struct sna_fill_op *op = data->op;
++
++      if (op->base.u.blt.pixel == gc->fgPixel)
++              sna_poly_point__fill_clip_extents(drawable, gc, mode, n, pt);
++}
++
++static void
++sna_poly_point__dash_clip_boxes(DrawablePtr drawable, GCPtr gc,
++                                int mode, int n, DDXPointPtr pt)
++{
++      struct sna_fill_spans *data = sna_gc(gc)->priv;
++      struct sna_fill_op *op = data->op;
++
++      if (op->base.u.blt.pixel == gc->fgPixel)
++              sna_poly_point__fill_clip_boxes(drawable, gc, mode, n, pt);
++}
++
++static void
+ sna_fill_spans__fill(DrawablePtr drawable,
+                    GCPtr gc, int n,
+                    DDXPointPtr pt, int *width, int sorted)
+@@ -8175,16 +8208,20 @@ spans_fallback:
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_offset;
+                                       else
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill;
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill;
+                               } else {
+                                       region_maybe_clip(&data.region,
+                                                         gc->pCompositeClip);
+                                       if (RegionNil(&data.region))
+                                               return;
+ 
+-                                      if (region_is_singular(&data.region))
++                                      if (region_is_singular(&data.region)) {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_extents;
+-                                      else
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_extents;
++                                      } else {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_boxes;
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_boxes;
++                                      }
+                               }
+                               assert(gc->miTranslate);
+ 
+@@ -8200,16 +8237,20 @@ spans_fallback:
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash_offset;
+                                       else
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash;
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__dash;
+                               } else {
+                                       region_maybe_clip(&data.region,
+                                                         gc->pCompositeClip);
+                                       if (RegionNil(&data.region))
+                                               return;
+ 
+-                                      if (region_is_singular(&data.region))
++                                      if (region_is_singular(&data.region)) {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash_clip_extents;
+-                                      else
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__dash_clip_extents;
++                                      } else {
+                                               sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__dash_clip_boxes;
++                                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__dash_clip_boxes;
++                                      }
+                               }
+                               assert(gc->miTranslate);
+ 
+@@ -8239,6 +8280,7 @@ spans_fallback:
+                        */
+                       sna_gc_ops__tmp.FillSpans = sna_fill_spans__gpu;
+                       sna_gc_ops__tmp.PolyFillRect = sna_poly_fill_rect__gpu;
++                      sna_gc_ops__tmp.PolyPoint = sna_poly_point__gpu;
+                       gc->ops = &sna_gc_ops__tmp;
+ 
+                       switch (gc->lineStyle) {
+@@ -9083,16 +9125,20 @@ spans_fallback:
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_offset;
+                               else
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill;
++                              sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill;
+                       } else {
+                               region_maybe_clip(&data.region,
+                                                 gc->pCompositeClip);
+                               if (RegionNil(&data.region))
+                                       return;
+ 
+-                              if (region_is_singular(&data.region))
++                              if (region_is_singular(&data.region)) {
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_extents;
+-                              else
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_extents;
++                              } else {
+                                       sna_gc_ops__tmp.FillSpans = 
sna_fill_spans__fill_clip_boxes;
++                                      sna_gc_ops__tmp.PolyPoint = 
sna_poly_point__fill_clip_boxes;
++                              }
+                       }
+                       assert(gc->miTranslate);
+                       gc->ops = &sna_gc_ops__tmp;
+@@ -9103,6 +9149,8 @@ spans_fallback:
+                       fill.done(data.sna, &fill);
+               } else {
+                       sna_gc_ops__tmp.FillSpans = sna_fill_spans__gpu;
++                      sna_gc_ops__tmp.PolyFillRect = sna_poly_fill_rect__gpu;
++                      sna_gc_ops__tmp.PolyPoint = sna_poly_point__gpu;
+                       gc->ops = &sna_gc_ops__tmp;
+ 
+                       for (i = 0; i < n; i++)
+-- 
+1.8.3.1
+

Deleted: extra-x86_64/xf86-video-intel.install
===================================================================
--- extra-x86_64/xf86-video-intel.install       2013-06-27 09:00:56 UTC (rev 
188959)
+++ extra-x86_64/xf86-video-intel.install       2013-06-27 09:01:12 UTC (rev 
188960)
@@ -1,8 +0,0 @@
-post_install() {
-  echo ">>> This driver now allows to switch"
-  echo ">>> between sna/uxa acceleration methods."
-  echo ">>> Add to the device section in /etc/X11/xorg.conf"
-  echo ">>>   Option \"AccelMethod\" \"sna\""
-  echo ">>> use uxa method if you run into trouble with sna."
-}
-

Copied: xf86-video-intel/repos/extra-x86_64/xf86-video-intel.install (from rev 
188959, xf86-video-intel/trunk/xf86-video-intel.install)
===================================================================
--- extra-x86_64/xf86-video-intel.install                               (rev 0)
+++ extra-x86_64/xf86-video-intel.install       2013-06-27 09:01:12 UTC (rev 
188960)
@@ -0,0 +1,8 @@
+post_install() {
+  echo ">>> This driver now allows to switch"
+  echo ">>> between sna/uxa acceleration methods."
+  echo ">>> Add to the device section in /etc/X11/xorg.conf"
+  echo ">>>   Option \"AccelMethod\" \"sna\""
+  echo ">>> use uxa method if you run into trouble with sna."
+}
+

Reply via email to