From: Dave Airlie <[email protected]>

This fixes a segfault where this code believes we are outside the screen
boundaries on a slave device, but we aren't.

Signed-off-by: Dave Airlie <[email protected]>
---
 hw/xfree86/modes/xf86Rotate.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
index 31e0372..a393747 100644
--- a/hw/xfree86/modes/xf86Rotate.c
+++ b/hw/xfree86/modes/xf86Rotate.c
@@ -322,6 +322,12 @@ xf86CrtcFitsScreen(xf86CrtcPtr crtc, struct 
pict_f_transform *crtc_to_fb)
     /* When called before PreInit, the driver is
      * presumably doing load detect
      */
+    if (pScrn->is_gpu) {
+       ScreenPtr pScreen = xf86ScrnToScreen(pScrn);
+       if (pScreen->current_master)
+           pScrn = xf86ScreenToScrn(pScreen->current_master);
+    }
+
     if (pScrn->virtualX == 0 || pScrn->virtualY == 0)
         return TRUE;
 
-- 
1.7.10.2

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to