[arch-commits] Commit in xf86-video-sis/trunk (2 files)

Jan de Groot jgc at archlinux.org
Thu Nov 22 14:14:18 UTC 2012


    Date: Thursday, November 22, 2012 @ 09:14:18
  Author: jgc
Revision: 171888

Try to fix crashes in SiS driver

Added:
  xf86-video-sis/trunk/0001-Disable-UploadToScreen-and-DownloadFromScreen.patch
Modified:
  xf86-video-sis/trunk/PKGBUILD

----------------------------------------------------------+
 0001-Disable-UploadToScreen-and-DownloadFromScreen.patch |   66 +++++++++++++
 PKGBUILD                                                 |    9 +
 2 files changed, 72 insertions(+), 3 deletions(-)

Added: 0001-Disable-UploadToScreen-and-DownloadFromScreen.patch
===================================================================
--- 0001-Disable-UploadToScreen-and-DownloadFromScreen.patch	                        (rev 0)
+++ 0001-Disable-UploadToScreen-and-DownloadFromScreen.patch	2012-11-22 14:14:18 UTC (rev 171888)
@@ -0,0 +1,66 @@
+From c0ff117d3e19e14829a21d89673e03f9d6389043 Mon Sep 17 00:00:00 2001
+From: Jan de Groot <jgc at archlinux.org>
+Date: Thu, 22 Nov 2012 15:04:42 +0100
+Subject: [PATCH] Disable UploadToScreen and DownloadFromScreen. These
+ functions use invalid pointers, causing crashes. As the
+ driver is technically unmaintained, it's better to rely on
+ software fallback than trying to fix the driver
+ implementation.
+
+---
+ src/sis300_accel.c | 2 ++
+ src/sis310_accel.c | 2 ++
+ src/sis_accel.c    | 2 ++
+ 3 files changed, 6 insertions(+)
+
+diff --git a/src/sis300_accel.c b/src/sis300_accel.c
+index af0527d..2162d76 100644
+--- a/src/sis300_accel.c
++++ b/src/sis300_accel.c
+@@ -1273,9 +1273,11 @@ SiS300AccelInit(ScreenPtr pScreen)
+ 
+ 		 /* Composite not supported */
+ 
++#if 0
+ 		 /* Upload, download to/from Screen */
+ 		 pSiS->EXADriverPtr->UploadToScreen = SiSUploadToScreen;
+ 		 pSiS->EXADriverPtr->DownloadFromScreen = SiSDownloadFromScreen;
++#endif
+ 
+ 	      } else {
+ 
+diff --git a/src/sis310_accel.c b/src/sis310_accel.c
+index 1a6f639..20106ce 100644
+--- a/src/sis310_accel.c
++++ b/src/sis310_accel.c
+@@ -2303,9 +2303,11 @@ SiS315AccelInit(ScreenPtr pScreen)
+ 	      }
+ #endif
+ 
++#if 0
+ 	      /* Upload, download to/from Screen */
+ 	      pSiS->EXADriverPtr->UploadToScreen = SiSUploadToScreen;
+ 	      pSiS->EXADriverPtr->DownloadFromScreen = SiSDownloadFromScreen;
++#endif
+ 
+ 	   }
+ #endif
+diff --git a/src/sis_accel.c b/src/sis_accel.c
+index c2c24c7..bb08296 100644
+--- a/src/sis_accel.c
++++ b/src/sis_accel.c
+@@ -801,9 +801,11 @@ SiSAccelInit(ScreenPtr pScreen)
+ 
+ 	  /* Composite not supported */
+ 
++#if 0
+ 	  /* Upload, download to/from Screen */
+ 	  pSiS->EXADriverPtr->UploadToScreen = SiSUploadToScreen;
+ 	  pSiS->EXADriverPtr->DownloadFromScreen = SiSDownloadFromScreen;
++#endif
+ 
+        }
+ #endif /* EXA */
+-- 
+1.8.0
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2012-11-22 12:16:12 UTC (rev 171887)
+++ PKGBUILD	2012-11-22 14:14:18 UTC (rev 171888)
@@ -3,7 +3,7 @@
 
 pkgname=xf86-video-sis
 pkgver=0.10.7
-pkgrel=2
+pkgrel=3
 pkgdesc="X.org SiS video driver"
 arch=(i686 x86_64)
 url="http://xorg.freedesktop.org/"
@@ -14,11 +14,14 @@
 optdepends=('sis-dri: DRI1 support from community repo')
 options=('!libtool')
 groups=('xorg-drivers' 'xorg')
-source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('be2eb6acba081e88dabc5be9db379e3da89a4d4edeb68064f204bf343a411cd0')
+source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2
+	0001-Disable-UploadToScreen-and-DownloadFromScreen.patch)
+sha256sums=('be2eb6acba081e88dabc5be9db379e3da89a4d4edeb68064f204bf343a411cd0'
+            '3108c60b3030c894fbdb1426b05d7a8281e5fa4f385e1a80e22c8813a3fb6f5b')
 
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}"
+  patch -Np1 -i "${srcdir}/0001-Disable-UploadToScreen-and-DownloadFromScreen.patch"
   ./configure --prefix=/usr
   make
 }




More information about the arch-commits mailing list