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:
parent
5b41d4e60b
commit
7a0555e9bb
|
@ -558,6 +558,14 @@ xf86InitOrigins(void)
|
||||||
|
|
||||||
screen = &xf86ConfigLayout.screens[i];
|
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) {
|
switch(screen->where) {
|
||||||
case PosObsolete:
|
case PosObsolete:
|
||||||
OldStyleConfig = TRUE;
|
OldStyleConfig = TRUE;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user