--- old/src/windows/classes/sun/awt/windows/WToolkit.java 2014-06-10 18:31:24.063208800 +0400 +++ new/src/windows/classes/sun/awt/windows/WToolkit.java 2014-06-10 18:31:23.472133700 +0400 @@ -36,6 +36,7 @@ import java.beans.PropertyChangeListener; import java.security.AccessController; import java.security.PrivilegedAction; +import sun.awt.AppContext; import sun.awt.AWTAutoShutdown; import sun.awt.AWTPermissions; import sun.awt.LightweightFrame; @@ -938,12 +939,16 @@ final Map props = getWProps(); updateXPStyleEnabled(props.get(XPSTYLE_THEME_ACTIVE)); - EventQueue.invokeLater(new Runnable() { - @Override - public void run() { - updateProperties(props); - } - }); + if (AppContext.getAppContext() == null) { + // We cannot post the update to any EventQueue. Listeners will + // be called on EDTs by DesktopPropertyChangeSupport + updateProperties(props); + } else { + // Cannot update on Toolkit thread. + // DesktopPropertyChangeSupport will call listeners on Toolkit + // thread if it has AppContext (standalone mode) + EventQueue.invokeLater(() -> updateProperties(props)); + } } private synchronized void updateProperties(final Map props) {