Fix crash in xf86InitOrigins()

In a multihead setup, if only the first screen can be
initialized, but the second screen is mentioned first in the
ServerLayout section, the xf86InitOrigins() function will crash
because the screen referred to in the e.g. "RightOf" part is
non-existent.
This commit is contained in:
Kristian Høgsberg 2007-10-28 09:37:52 +01:00 committed by Adam Jackson
parent 5b41d4e60b
commit 7a0555e9bb

View File

@ -558,6 +558,14 @@ xf86InitOrigins(void)
screen = &xf86ConfigLayout.screens[i];
if (screen->refscreen != NULL &&
screen->refscreen->screennum >= xf86NumScreens) {
screensLeft &= ~(1 << i);
xf86Msg(X_WARNING, "Not including screen \"%s\" in origins calculation.\n",
screen->screen->id);
continue;
}
switch(screen->where) {
case PosObsolete:
OldStyleConfig = TRUE;