diff options
author | Hans de Goede <hdegoede@redhat.com> | 2016-09-12 12:47:59 +0200 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2016-09-13 10:27:30 +0200 |
commit | 35c4e96ed1d372dd161480be8cddcd2d4549e449 (patch) | |
tree | e084490ccf83e17b5bd6be7f50aa5045833c1cf7 /randr | |
parent | 7b634067c13045671685a9f00bfbac626ed68f94 (diff) |
randr: Fix crtc_bounds when using rotation combined with reflection
Before this commit crtc_bounds() did not take reflection into account,
when using reflection with 0 / 180 degree rotation this was not an
issue because of the default in the switch-case doing the right thing.
But when using 90 / 270 degree rotation we would also end up in the
default which is wrong in this case. This would lead to the cursor
being constrained to a height x height area of the monitor.
This commit masks out the reflection bits for the switch-case,
making crtc_bounds return the correct bounds and fixing the
problematic cursor constraining.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Diffstat (limited to 'randr')
-rw-r--r-- | randr/rrcrtc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/randr/rrcrtc.c b/randr/rrcrtc.c index 76365919a..5d404e84b 100644 --- a/randr/rrcrtc.c +++ b/randr/rrcrtc.c @@ -281,7 +281,7 @@ crtc_bounds(RRCrtcPtr crtc, int *left, int *right, int *top, int *bottom) *left = crtc->x; *top = crtc->y; - switch (crtc->rotation) { + switch (crtc->rotation & 0xf) { case RR_Rotate_0: case RR_Rotate_180: default: |