--- a/jdk/src/share/classes/sun/awt/AppContext.java Thu Mar 13 16:19:32 2008 +0300
+++ b/jdk/src/share/classes/sun/awt/AppContext.java Thu Mar 13 16:27:20 2008 +0300
@@ -1,5 +1,5 @@
/*
- * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved.
+ * Copyright 1998-2008 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -40,6 +40,8 @@
import java.util.Map;
import java.util.Set;
import java.util.HashSet;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import java.beans.PropertyChangeSupport;
import java.beans.PropertyChangeListener;
@@ -126,6 +128,7 @@
* @author Fred Ecks
*/
public final class AppContext {
+ private static final Logger log = Logger.getLogger("sun.awt.AppContext");
/* Since the contents of an AppContext are unique to each Java
* session, this class should never be serialized. */
@@ -385,7 +388,13 @@
public void run() {
Window[] windowsToDispose = Window.getOwnerlessWindows();
for (Window w : windowsToDispose) {
- w.dispose();
+ try {
+ w.dispose();
+ } catch (Throwable t) {
+ if (log.isLoggable(Level.FINER)) {
+ log.log(Level.FINER, "exception occured while disposing app context", t);
+ }
+ }
}
AccessController.doPrivileged(new PrivilegedAction() {
public Object run() {