summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorMichel Dänzer <mdaenzer@redhat.com>2020-02-06 17:57:16 +0100
committerMichel Dänzer <michel@daenzer.net>2020-02-06 18:02:06 +0100
commit1c3e51dabadbf65e7fdedbebbdcd19a85fb03e34 (patch)
tree24939baec86730bb5565e94d200da23a5ba6df42 /hw
parentaf2fd88b1019f63fe3ce871f9e99b3e1e4608b25 (diff)
xfree86/modes: Bail from xf86RotateRedisplay if pScreen->root is NULL
Avoids a crash in xf86RotatePrepare -> DamageRegister during CreateScreenResources if rotation or another transform is configured for any connected RandR output in xorg.conf. The generic rotation/transform code generally can't work without the root window currently. Closes: https://gitlab.freedesktop.org/xorg/xserver/issues/969 Fixes: 094f42cdfe5d "xfree86/modes: Call xf86RotateRedisplay from xf86CrtcRotate" Acked-by: Olivier Fourdan <ofourdan@redhat.com> Reviewed-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit 6a5e47c57d16de8b6a6a2636f3cbad1aebec32e2)
Diffstat (limited to 'hw')
-rw-r--r--hw/xfree86/modes/xf86Rotate.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
index 05944cfcb..5415ed97c 100644
--- a/hw/xfree86/modes/xf86Rotate.c
+++ b/hw/xfree86/modes/xf86Rotate.c
@@ -176,7 +176,7 @@ xf86RotateRedisplay(ScreenPtr pScreen)
DamagePtr damage = xf86_config->rotation_damage;
RegionPtr region;
- if (!damage)
+ if (!damage || !pScreen->root)
return FALSE;
xf86RotatePrepare(pScreen);
region = DamageRegion(damage);