JDK-6250714 : AwtObject::scheduleDelete() doesn't work upon app shutdown
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 6
  • Priority: P2
  • Status: Closed
  • Resolution: Cannot Reproduce
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2005-04-05
  • Updated: 2011-01-20
  • Resolved: 2005-06-17
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 6
6Resolved
Related Reports
Relates :  
Description
Say, we have a button. Then in awt_Toolkit.cpp we put some debug info to monitore WM_AWT_DISPOSE message processing. Now when we call removeNotify on the button AwtObject::scheduleDelete() sends the toolkit thread WM_AWT_DISPOSE message and the button object gets destroied properly. But when we just close our window with the button (thus exiting the application) AwtObject::scheduleDelete() sends WM_AWT_DISPOSE as usual but it doesn't reach the target that is the toolkit thread. So, the button object doesn't get destroied properly in the last case (only via system resources freeing). There is no problem with the button though, but when we deal with some specific resource it may not be destoied at all after the application exited.
###@###.### 2005-04-05 15:06:34 GMT

Comments
EVALUATION In the fix for 6229122 deleting native AWT objects is synchronized with other actions (like AwtTextComponent::GetText). Both deleting and those actions are moved into a dedicated critical section, and that fixes this bug. ###@###.### 2005-04-06 11:40:49 GMT As this bug is already fixed together with 6229122, I'm closing it as not reproducible. ###@###.### 2005-06-17 08:38:44 GMT
05-04-2005