The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
SUGGESTED FIX
# HG changeset patch
# User rkennke
# Date 1273023147 25200
# Node ID 697caff58d3f41b09101cf1b86f0148451e77f4d
# Parent a78afce5980929c2bcd1910a57606b72dada9bcb
6892485: Deadlock in SunGraphicsEnvironment / FontManager
Summary: Synchronize on correct monitor in SunFontManager.
Reviewed-by: igor, prr, martin
--- a/src/share/classes/sun/java2d/SunGraphicsEnvironment.java Mon May 03 18:17:08 2010 +0200
+++ b/src/share/classes/sun/java2d/SunGraphicsEnvironment.java Tue May 04 18:32:27 2010 -0700
@@ -459,7 +459,7 @@ public abstract class SunGraphicsEnviron
return;
}
/* Use lock specific to the font system */
- synchronized (lucidaFontName) {
+ synchronized (FontManager.class) {
if (debugFonts) {
Thread.dumpStack();
logger.info("SunGraphicsEnvironment.loadFonts() called");
@@ -499,7 +499,7 @@ public abstract class SunGraphicsEnviron
return;
}
/* Use lock specific to the font system */
- synchronized (lucidaFontName) {
+ synchronized (FontManager.class) {
if (debugFonts) {
Thread.dumpStack();
logger.info("loadAllFontFiles() called");
05-05-2010
EVALUATION
A fine backport.
05-05-2010
PUBLIC COMMENTS
See
http://hg.openjdk.java.net/jdk6/jdk6/jdk/rev/697caff58d3f