diff options
Diffstat (limited to 'extra/xf86-video-sis')
-rw-r--r-- | extra/xf86-video-sis/0001-Disable-UploadToScreen-and-DownloadFromScreen.patch | 66 | ||||
-rw-r--r-- | extra/xf86-video-sis/PKGBUILD | 11 |
2 files changed, 73 insertions, 4 deletions
diff --git a/extra/xf86-video-sis/0001-Disable-UploadToScreen-and-DownloadFromScreen.patch b/extra/xf86-video-sis/0001-Disable-UploadToScreen-and-DownloadFromScreen.patch new file mode 100644 index 000000000..90e93b403 --- /dev/null +++ b/extra/xf86-video-sis/0001-Disable-UploadToScreen-and-DownloadFromScreen.patch @@ -0,0 +1,66 @@ +From c0ff117d3e19e14829a21d89673e03f9d6389043 Mon Sep 17 00:00:00 2001 +From: Jan de Groot <jgc@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 + diff --git a/extra/xf86-video-sis/PKGBUILD b/extra/xf86-video-sis/PKGBUILD index a44bde11c..fb0840cb0 100644 --- a/extra/xf86-video-sis/PKGBUILD +++ b/extra/xf86-video-sis/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 168588 2012-10-13 11:45:51Z andyrtr $ +# $Id: PKGBUILD 171889 2012-11-22 14:24:06Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> 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 @@ conflicts=('xorg-server<1.13.0' 'X-ABI-VIDEODRV_VERSION<13' 'X-ABI-VIDEODRV_VERS 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 } |