diff options
author | Michel Dänzer <mdaenzer@redhat.com> | 2020-02-06 17:57:16 +0100 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2020-02-06 18:02:06 +0100 |
commit | 1c3e51dabadbf65e7fdedbebbdcd19a85fb03e34 (patch) | |
tree | 24939baec86730bb5565e94d200da23a5ba6df42 /hw | |
parent | af2fd88b1019f63fe3ce871f9e99b3e1e4608b25 (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.c | 2 |
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); |