This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Although it seems trivial, it is vital for automated tests. When I Finish Debugger Session I need to know that debugger really finished. That's why I wait for message "User program finished". But it is not printed out sometimes. It is because DebuggerOutput.destroy() is called before property change of JPDADebugger.STATE_DISCONNECTED is fired. Trying to investigate it why I found out that JPDADebuggerImpl.finish is called by two threads from StartActionProvider.java:224 and KillActionProvider. Please, look at attached log messages. It shows these two concurrent threads and property change STATE_DISCONNECTED is never called. Could it be somehow synchronized or fixed a different way? These issues might be also interesting: 44412, 56233. I reproduced it also manually: - create web project - set Swing HTML browser as default - add breakpoint to index.jsp - start debugger and wait until it stops at breakpoint - call Continue from main menu - quickly after previous action call Finish Debugger Session from main menu. Debugger seems to be stopped but "User program finished" message is never displayed. Build 20060111-0429, JDK1.5.0_06, WindowsXP.
Created attachment 28346 [details] Debug messages
I was able to reproduce this. Thanks for the analysis, it helps.
Changing TM for open issues.
Already fixed, inspecting the related code, StartActionProvider and KillActionProvider seems to be synchronized now. No longer reproducible.
Verified.