diff options
-rw-r--r-- | user/xf86-video-nouveau/APKBUILD | 41 | ||||
-rw-r--r-- | user/xf86-video-nouveau/dont-strcmp-null.patch | 33 |
2 files changed, 74 insertions, 0 deletions
diff --git a/user/xf86-video-nouveau/APKBUILD b/user/xf86-video-nouveau/APKBUILD new file mode 100644 index 000000000..700e82d37 --- /dev/null +++ b/user/xf86-video-nouveau/APKBUILD @@ -0,0 +1,41 @@ +# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=xf86-video-nouveau +pkgver=1.0.15 +pkgrel=2 +pkgdesc="Open-source X.org drivers for nVidia video cards" +url="https://nouveau.freedesktop.org/" +arch="all" +license="MIT" +depends="mesa-dri-nouveau" +makedepends="eudev-dev libdrm-dev util-macros xorgproto-dev xorg-server-dev" +subpackages="$pkgname-doc" +source="https://www.X.Org/archive/individual/driver/$pkgname-$pkgver.tar.bz2 + dont-strcmp-null.patch + " + +build() { + cd "$builddir" + export LDFLAGS="$LDFLAGS -Wl,-z,lazy" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="69a8f8e7920d893f17d14fd9f05e35de246d980a243f3b3b00c05deae7f6bd97e0f51e6ddfa322b4d0815233fe5f656d4e55f54461249f3f24c3bc025a682285 xf86-video-nouveau-1.0.15.tar.bz2 +4cd8b3b9996989a8c9302a5ba77aa9f794fde7559d9f131d5bb4b3174d68be85140834719384c22686b63c89242bdf09696c0c1a98b632f7e3a4f46522f49c3b dont-strcmp-null.patch" diff --git a/user/xf86-video-nouveau/dont-strcmp-null.patch b/user/xf86-video-nouveau/dont-strcmp-null.patch new file mode 100644 index 000000000..23c4fd216 --- /dev/null +++ b/user/xf86-video-nouveau/dont-strcmp-null.patch @@ -0,0 +1,33 @@ +From 69aecdd305defdd014bc92b82acc6000988511cf Mon Sep 17 00:00:00 2001 +From: Adam Jackson <ajax@redhat.com> +Date: Tue, 13 Jun 2017 09:23:42 -0400 +Subject: modesetting: Validate the atom for enum properties + +The client could have said anything here, and if what they said doesn't +actually name an atom NameForAtom() will return NULL, and strcmp() will +be unhappy about that. + +[copied from xserver d4995a3936ae283b9080fdaa0905daa669ebacfc] + +Signed-off-by: Adam Jackson <ajax@redhat.com> +--- + src/drmmode_display.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/drmmode_display.c b/src/drmmode_display.c +index 2b71c9c..04a0b57 100644 +--- a/src/drmmode_display.c ++++ b/src/drmmode_display.c +@@ -1081,7 +1081,8 @@ drmmode_output_set_property(xf86OutputPtr output, Atom property, + if (value->type != XA_ATOM || value->format != 32 || value->size != 1) + return FALSE; + memcpy(&atom, value->data, 4); +- name = NameForAtom(atom); ++ if (!(name = NameForAtom(atom))) ++ return FALSE; + + /* search for matching name string, then set its value down */ + for (j = 0; j < p->mode_prop->count_enums; j++) { +-- +cgit v1.1 + |