diff options
author | Matt Turner <mattst88@gentoo.org> | 2018-03-06 12:23:08 -0800 |
---|---|---|
committer | Matt Turner <mattst88@gentoo.org> | 2018-03-06 12:25:20 -0800 |
commit | bbf0927bb971152a4d7e18b7fa3f3c40c186a569 (patch) | |
tree | a01f49b2d16bfd96dbfc63814745b89d16bedc11 /x11-base/xorg-server/files | |
parent | x11-base/xorg-server: Require libdrm-2.4.89 (diff) | |
download | gentoo-bbf0927bb971152a4d7e18b7fa3f3c40c186a569.tar.gz gentoo-bbf0927bb971152a4d7e18b7fa3f3c40c186a569.tar.bz2 gentoo-bbf0927bb971152a4d7e18b7fa3f3c40c186a569.zip |
x11-base/xorg-server: Add upstream patch to fix crash
Closes: https://bugs.gentoo.org/649392
Diffstat (limited to 'x11-base/xorg-server/files')
-rw-r--r-- | x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch b/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch new file mode 100644 index 000000000000..bcaaf867c7a7 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch @@ -0,0 +1,44 @@ +From 2af0a50a4bb9be9f58681d417ceb9a7029caaf3b Mon Sep 17 00:00:00 2001 +From: Adam Jackson <ajax@redhat.com> +Date: Wed, 28 Feb 2018 11:23:41 -0500 +Subject: [PATCH] randr: Fix a crash on initialization with GPU screens +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +RRSetChanged (immediately above) was immune to screens with no master, +but RRTellChanged was not: + + Thread 1 "X" received signal SIGSEGV, Segmentation fault. + RRTellChanged (pScreen=<optimized out>) at ../../randr/randr.c:576 + 576 mastersp = rrGetScrPriv(master); + (gdb) bt + #0 RRTellChanged (pScreen=<optimized out>) at ../../randr/randr.c:576 + #1 0x000055555566f1e9 in RRNoticePropertyChange (value=0x555555bfbf28, property=70, output=0x555555bfef10) at ../../randr/rrproperty.c:153 + #2 RRChangeOutputProperty (output=output@entry=0x555555bfef10, property=<optimized out>, type=type@entry=19, format=format@entry=32, mode=<optimized out>, mode@entry=0, len=len@entry=1, value=0x7fffffffe77c, sendevent=1, pending=0) + at ../../randr/rrproperty.c:263 + #3 0x000055555566dba5 in RROutputSetNonDesktop (output=output@entry=0x555555bfef10, nonDesktop=nonDesktop@entry=0) at ../../randr/rroutput.c:333 + ... + +Reported-by: Michel Dänzer <michel@daenzer.net> +Signed-off-by: Adam Jackson <ajax@redhat.com> +--- + randr/randr.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/randr/randr.c b/randr/randr.c +index 339ad3ece..feb54bcc8 100644 +--- a/randr/randr.c ++++ b/randr/randr.c +@@ -602,6 +602,8 @@ RRTellChanged(ScreenPtr pScreen) + + if (pScreen->isGPU) { + master = pScreen->current_master; ++ if (!master) ++ return; + mastersp = rrGetScrPriv(master); + } + else { +-- +2.16.1 + |