diff -r 5060b1928712 -r f6d501f12376 jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java --- a/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java Fri Sep 27 22:17:24 2013 +0400 +++ b/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java Fri Sep 27 22:25:58 2013 +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() {