-
Bug
-
Resolution: Fixed
-
P2
-
1.4.0
-
beta
-
generic, x86
-
generic, windows_nt
-
Verified
###@###.###
The following test reproduces the problem:
--------------------------------------------------------
import java.awt.dnd.DragSource;
public class HangTest {
public static void main(String[] args) {
DragSource dragSource = new DragSource();
}
}
--------------------------------------------------------
The test case hangs with the following thread dump:
-------------------------------------------------------
Full thread dump:
"AWT-Windows" daemon prio=7 tid=0x7768b0 nid=0x13b runnable [0xe64f000..0xe64fdc0]
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(WToolkit.java:193)
at java.lang.Thread.run(../../../src/share/classes/java/lang/Thread.java:488)
"Signal Dispatcher" daemon prio=10 tid=0x768a10 nid=0xe7 waiting on monitor [0..0]
"Finalizer" daemon prio=9 tid=0x7652a0 nid=0x11c waiting on monitor [0xe3ef000..0xe3efdc0]
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:126)
at java.lang.ref.Finalizer$FinalizerThread.run(../../../src/share/classes/java/lang/ref/Finalizer.java:162)
"Reference Handler" daemon prio=10 tid=0x765ee0 nid=0x140 waiting on monitor [0xe3af000..0xe3afdc0]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(../../../src/share/classes/java/lang/Object.java:420)
at java.lang.ref.Reference$ReferenceHandler.run(../../../src/share/classes/java/lang/ref/Reference.java:110)
"main" prio=5 tid=0x761320 nid=0x13d waiting on monitor [0x6f000..0x6fc34]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(../../../src/share/classes/java/lang/Object.java:420)
at sun.awt.image.ImageRepresentation.reconstruct(ImageRepresentation.java:106)
at sun.awt.windows.WCustomCursor.createNativeCursor(WCustomCursor.java:41)
at sun.awt.CustomCursor.<init>(CustomCursor.java:83)
at sun.awt.windows.WCustomCursor.<init>(WCustomCursor.java:30)
at sun.awt.windows.WToolkit.createCustomCursor(WToolkit.java:657)
at java.awt.Cursor$1.run(Cursor.java:274)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Cursor.getSystemCustomCursor(Cursor.java:268)
at sun.awt.windows.WToolkit.lazilyLoadDesktopProperty(WToolkit.java:712)
at java.awt.Toolkit.getDesktopProperty(Toolkit.java:1340)
at java.awt.dnd.DragSource.load(DragSource.java:113)
at java.awt.dnd.DragSource.<clinit>(DragSource.java:126)
at HangTest.main(HangTest.java:5)
"VM Thread" prio=5 tid=0x763140 nid=0x119 runnable
"VM Periodic Task Thread" prio=10 tid=0x7676e0 nid=0x141 waiting on monitor
-------------------------------------------------------
This regression is introduced with the fix for 4343270.
When i backout the fix the hang disappears.
The following test reproduces the problem:
--------------------------------------------------------
import java.awt.dnd.DragSource;
public class HangTest {
public static void main(String[] args) {
DragSource dragSource = new DragSource();
}
}
--------------------------------------------------------
The test case hangs with the following thread dump:
-------------------------------------------------------
Full thread dump:
"AWT-Windows" daemon prio=7 tid=0x7768b0 nid=0x13b runnable [0xe64f000..0xe64fdc0]
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(WToolkit.java:193)
at java.lang.Thread.run(../../../src/share/classes/java/lang/Thread.java:488)
"Signal Dispatcher" daemon prio=10 tid=0x768a10 nid=0xe7 waiting on monitor [0..0]
"Finalizer" daemon prio=9 tid=0x7652a0 nid=0x11c waiting on monitor [0xe3ef000..0xe3efdc0]
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:126)
at java.lang.ref.Finalizer$FinalizerThread.run(../../../src/share/classes/java/lang/ref/Finalizer.java:162)
"Reference Handler" daemon prio=10 tid=0x765ee0 nid=0x140 waiting on monitor [0xe3af000..0xe3afdc0]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(../../../src/share/classes/java/lang/Object.java:420)
at java.lang.ref.Reference$ReferenceHandler.run(../../../src/share/classes/java/lang/ref/Reference.java:110)
"main" prio=5 tid=0x761320 nid=0x13d waiting on monitor [0x6f000..0x6fc34]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(../../../src/share/classes/java/lang/Object.java:420)
at sun.awt.image.ImageRepresentation.reconstruct(ImageRepresentation.java:106)
at sun.awt.windows.WCustomCursor.createNativeCursor(WCustomCursor.java:41)
at sun.awt.CustomCursor.<init>(CustomCursor.java:83)
at sun.awt.windows.WCustomCursor.<init>(WCustomCursor.java:30)
at sun.awt.windows.WToolkit.createCustomCursor(WToolkit.java:657)
at java.awt.Cursor$1.run(Cursor.java:274)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Cursor.getSystemCustomCursor(Cursor.java:268)
at sun.awt.windows.WToolkit.lazilyLoadDesktopProperty(WToolkit.java:712)
at java.awt.Toolkit.getDesktopProperty(Toolkit.java:1340)
at java.awt.dnd.DragSource.load(DragSource.java:113)
at java.awt.dnd.DragSource.<clinit>(DragSource.java:126)
at HangTest.main(HangTest.java:5)
"VM Thread" prio=5 tid=0x763140 nid=0x119 runnable
"VM Periodic Task Thread" prio=10 tid=0x7676e0 nid=0x141 waiting on monitor
-------------------------------------------------------
This regression is introduced with the fix for 4343270.
When i backout the fix the hang disappears.
- duplicates
-
JDK-4369750 Calling DragSource.getDefaultDragSource() hangs the DnD Applications in Win32
-
- Closed
-
-
JDK-4371331 Cannot get a Class Object for DragSource using Class.forname()
-
- Closed
-