From f6401f944d327cc5d9a7ee0bbdf4f7fc8eaa31e8 Mon Sep 17 00:00:00 2001 From: Matthias Hopf Date: Fri, 23 Nov 2007 16:12:49 +0100 Subject: [PATCH] Don't segfault if referring to a relative output where no modes survived. --- hw/xfree86/modes/xf86Crtc.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c index 5a1ed8c47..8595d960c 100644 --- a/hw/xfree86/modes/xf86Crtc.c +++ b/hw/xfree86/modes/xf86Crtc.c @@ -1079,6 +1079,16 @@ xf86InitialOutputPositions (ScrnInfoPtr scrn, DisplayModePtr *modes) any_set = TRUE; continue; } + if (!modes[or]) + { + xf86DrvMsg (scrn->scrnIndex, X_ERROR, + "Cannot position output %s relative to output %s without modes\n", + output->name, relative_name); + output->initial_x = 0; + output->initial_y = 0; + any_set = TRUE; + continue; + } if (relative->initial_x == POSITION_UNSET) { keep_going = TRUE;