-
Bug
-
Resolution: Fixed
-
P2
-
8
-
b36
-
generic
-
generic
-
Verified
The bug is reproducible on jdk8 with the following stacktrace (the test is attached):
"Thread 1@382" prio=5 tid=0x17 nid=NA waiting for monitor entry
java.lang.Thread.State: BLOCKED
waiting for Thread 2@383 to release lock on <0x18c> (a javax.swing.undo.UndoManager)
at javax.swing.undo.UndoManager.addEdit(UndoManager.java:502)
at javax.swing.undo.UndoManager.undoableEditHappened(UndoManager.java:611)
at javax.swing.text.AbstractDocument.fireUndoableEditUpdate(AbstractDocument.java:287)
at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:754)
at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:708)
at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
at UndoManagerDeadlockTest$1.run(UndoManagerDeadlockTest.java:28)
"Thread 2@383" prio=5 tid=0x18 nid=NA waiting
java.lang.Thread.State: WAITING
blocks Thread 1@382
at java.lang.Object.wait(Object.java:-1)
at java.lang.Object.wait(Object.java:502)
at javax.swing.text.AbstractDocument.writeLock(AbstractDocument.java:1344)
at javax.swing.text.AbstractDocument$DefaultDocumentEvent.undo(AbstractDocument.java:2799)
at javax.swing.undo.UndoManager.undoTo(UndoManager.java:335)
at javax.swing.undo.UndoManager.undo(UndoManager.java:413)
- locked <0x18c> (a javax.swing.undo.UndoManager)
at UndoManagerDeadlockTest$2.run(UndoManagerDeadlockTest.java:39)
"Thread 1@382" prio=5 tid=0x17 nid=NA waiting for monitor entry
java.lang.Thread.State: BLOCKED
waiting for Thread 2@383 to release lock on <0x18c> (a javax.swing.undo.UndoManager)
at javax.swing.undo.UndoManager.addEdit(UndoManager.java:502)
at javax.swing.undo.UndoManager.undoableEditHappened(UndoManager.java:611)
at javax.swing.text.AbstractDocument.fireUndoableEditUpdate(AbstractDocument.java:287)
at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:754)
at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:708)
at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
at UndoManagerDeadlockTest$1.run(UndoManagerDeadlockTest.java:28)
"Thread 2@383" prio=5 tid=0x18 nid=NA waiting
java.lang.Thread.State: WAITING
blocks Thread 1@382
at java.lang.Object.wait(Object.java:-1)
at java.lang.Object.wait(Object.java:502)
at javax.swing.text.AbstractDocument.writeLock(AbstractDocument.java:1344)
at javax.swing.text.AbstractDocument$DefaultDocumentEvent.undo(AbstractDocument.java:2799)
at javax.swing.undo.UndoManager.undoTo(UndoManager.java:335)
at javax.swing.undo.UndoManager.undo(UndoManager.java:413)
- locked <0x18c> (a javax.swing.undo.UndoManager)
at UndoManagerDeadlockTest$2.run(UndoManagerDeadlockTest.java:39)
- relates to
-
JDK-8030702 Deadlock between subclass of AbstractDocument and UndoManager
-
- Resolved
-
-
JDK-8030118 Document listeners fired outside document lock
-
- Closed
-