diff --git a/hw/xfree86/common/xf86Cursor.c b/hw/xfree86/common/xf86Cursor.c index 9e6e62216..3ea1b4d91 100644 --- a/hw/xfree86/common/xf86Cursor.c +++ b/hw/xfree86/common/xf86Cursor.c @@ -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;