-
Bug
-
Resolution: Fixed
-
P1
-
1.1.7, 1.2.0
-
b01
-
generic, x86
-
generic, solaris_2.5, windows_95, windows_nt
-
Not verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2022682 | 1.2.0 | Robi Khan | P1 | Resolved | Fixed | 1.2fcs |
In HotJava it is possible to get into a state where moving the mouse causes an IllegalComponentStateException due to code added in the lightweight dispatcher in Container.java.
The code in TrackMouseEnterExit calls Component.getLocationOnScreen, first checking if the component is visible.
There are two problems with this:
1) Component.show() is not synchronized on the tree lock so there can be races
2) The code should call isShowing instead of isVisible since that is the criteria by which getLocationOnScreen decides to throw an exception.
The tree lock synchronization was removed in 1.1.6 (for 4114201), but experimentation in 1.2 shows it does not cause problems, and furthermore, the absence of locking will definitely cause problems. 4114201 was eventually determined to be a configuration problem.
The code in TrackMouseEnterExit calls Component.getLocationOnScreen, first checking if the component is visible.
There are two problems with this:
1) Component.show() is not synchronized on the tree lock so there can be races
2) The code should call isShowing instead of isVisible since that is the criteria by which getLocationOnScreen decides to throw an exception.
The tree lock synchronization was removed in 1.1.6 (for 4114201), but experimentation in 1.2 shows it does not cause problems, and furthermore, the absence of locking will definitely cause problems. 4114201 was eventually determined to be a configuration problem.
- backported by
-
JDK-2022682 IllegalComponentStateException when using HotJava with 1.1.7
-
- Resolved
-
- duplicates
-
JDK-4174920 IllegalComponentStateException is thrown when JComboBox lw popup menu is used
-
- Closed
-
-
JDK-4179633 IllegalComponentStateExceptions on "M" running JavaTest
-
- Closed
-
- relates to
-
JDK-4114201 JDK1.1.6H with HJV1.1.1 could not start up on win32 platform
-
- Closed
-