diff options
Diffstat (limited to 'hw/xfree86/modes')
-rw-r--r-- | hw/xfree86/modes/xf86Crtc.h | 5 | ||||
-rw-r--r-- | hw/xfree86/modes/xf86Rotate.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/hw/xfree86/modes/xf86Crtc.h b/hw/xfree86/modes/xf86Crtc.h index 692bf40b9..f6ab4bacd 100644 --- a/hw/xfree86/modes/xf86Crtc.h +++ b/hw/xfree86/modes/xf86Crtc.h @@ -366,6 +366,11 @@ struct _xf86Crtc { Bool shadowClear; /** + * Force the shadow + */ + Bool forceShadow; + + /** * Indicates that the driver is handling the transform, so the shadow * surface should be disabled. The driver writes this field before calling * xf86CrtcRotate to indicate that it is handling the transform (including diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c index 9c00a443f..f6bf531d2 100644 --- a/hw/xfree86/modes/xf86Rotate.c +++ b/hw/xfree86/modes/xf86Rotate.c @@ -376,7 +376,9 @@ xf86CrtcRotate(xf86CrtcPtr crtc) &crtc_to_fb, &f_crtc_to_fb, &f_fb_to_crtc) && - xf86CrtcFitsScreen(crtc, &f_crtc_to_fb)) { + !crtc->forceShadow && + xf86CrtcFitsScreen(crtc, &f_crtc_to_fb)) + { /* * If the untranslated transformation is the identity, * disable the shadow buffer |