JDK-8064468 : ownedWindowList access requires synchronization in Window.setAlwaysOnTop() method
  • Type: Bug
  • Component: client-libs
  • Affected Version: 8
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2014-11-10
  • Updated: 2015-11-03
  • Resolved: 2014-11-13
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.

To download the current JDK release, click here.
JDK 8 JDK 9
8u40Fixed 9 b42Fixed
Related Reports
Relates :  
Description
See the report: http://mail.openjdk.java.net/pipermail/swing-dev/2014-November/004018.html

There is the exception in the Window.setAlwaysOnTop() method:

java.util.ConcurrentModificationException
            at java.util.Vector$Itr.checkForComodification(Unknown Source)
            at java.util.Vector$Itr.next(Unknown Source)
            at java.awt.Window.setAlwaysOnTop(Unknown Source)
            at de.eurodata.commons.swing.SwingUtils$1.run(SwingUtils.java:344)
            at java.awt.event.InvocationEvent.dispatch(Unknown Source)
            at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
            at java.awt.EventQueue.access$400(Unknown Source)
            at java.awt.EventQueue$3.run(Unknown Source)
            at java.awt.EventQueue$3.run(Unknown Source)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
            at java.awt.EventQueue.dispatchEvent(Unknown Source)
            at de.eurodata.commons.swing.event.AWTThrowableHandler.dispatchEvent(AWTThrowableHandler.java:28)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
            at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.run(Unknown Source)
Comments
Reproducible in JDK 8 b132 on Windows 7 x64 MAHAIRA4+idergali@MAHAIRA4 /cygdrive/d/Projects $ time /cygdrive/d/Projects/jdk1.8.0_00_b132/bin/java -cp . SyncAlwaysOnTopFieldTest Exception in thread "main" java.util.ConcurrentModificationException at java.util.Vector$Itr.checkForComodification(Vector.java:1184) at java.util.Vector$Itr.next(Vector.java:1137) at java.awt.Window.setAlwaysOnTop(Window.java:2250) at SyncAlwaysOnTopFieldTest.main(SyncAlwaysOnTopFieldTest.java:28)
03-11-2015

Alexander P, please figure out in what JDK 8 release the bug was introduced.
02-11-2015

In what release/build was the regression introduced?
30-10-2015