--- old/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java 2013-09-26 17:42:32.335760100 +0400 +++ new/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java 2013-09-26 17:42:31.864733200 +0400 @@ -200,7 +200,12 @@ * Returns the default screen graphics device. */ public GraphicsDevice getDefaultScreenDevice() { - return getScreenDevices()[getDefaultScreenNum()]; + GraphicsDevice[] screens = getScreenDevices(); + if (screens.length == 0) { + throw new AWTError("no screen devices"); + } + int index = getDefaultScreenNum(); + return screens[0 < index && index < screens.length ? index : 0]; } public boolean isDisplayLocal() {