# HG changeset patch # User pchelko # Date 1393343327 -14400 # Node ID a6c103245f638dde616ca70209c2c15e9b95fb90 # Parent 5c0c16556c1bc8a99e9ba836300cd19fd1155736 8028285: RMI Thread can no longer call out to AWT Reviewed-by: art, serb, ddehaven diff -r 5c0c16556c1b -r a6c103245f63 jdk/src/share/classes/sun/awt/AppContext.java --- a/jdk/src/share/classes/sun/awt/AppContext.java Mon Feb 24 11:03:49 2014 -0800 +++ b/jdk/src/share/classes/sun/awt/AppContext.java Tue Feb 25 19:48:47 2014 +0400 @@ -331,6 +331,20 @@ while (context == null) { threadGroup = threadGroup.getParent(); if (threadGroup == null) { + // We've got up to the root thread group and did not find an AppContext + // Try to get it from the security manager + SecurityManager securityManager = System.getSecurityManager(); + if (securityManager != null) { + ThreadGroup smThreadGroup = securityManager.getThreadGroup(); + if (smThreadGroup != null) { + /* + * If we get this far then it's likely that + * the ThreadGroup does not actually belong + * to the applet, so do not cache it. + */ + return threadGroup2appContext.get(smThreadGroup); + } + } return null; } context = threadGroup2appContext.get(threadGroup);