Bug 1759

Summary: Widget is disposed error on breakpoint properties (1GLE3NA)
Product: [Eclipse Project] JDT Reporter: Joe Szurszewski <eclipse>
Component: DebugAssignee: Darin Wright <darin.eclipse>
Status: VERIFIED FIXED QA Contact:
Severity: critical    
Priority: P1 CC: darin.eclipse, Darin_Swanson, Randy_Giffen
Version: 2.0   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Joe Szurszewski CLA 2001-10-10 22:18:51 EDT
JGS (10/10/01 11:49:58 AM)
	Under 203:
	Set breakpoint inside some loop (e.g. InfiniteLoop).
	Debug.
	When stopped at breakpoint, use property sheet to change enabled to 'false'.
	Click Resume, notice workbench dies with following walkback:

org.eclipse.swt.SWTError: Widget is disposed
	at org.eclipse.swt.custom.TableTreeItem.getDisplay(TableTreeItem.java:180)
	at org.eclipse.swt.widgets.Widget.isValidThread(Widget.java(Compiled Code))
	at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java(Compiled Code))
	at org.eclipse.swt.widgets.Widget.getData(Widget.java:405)
	at org.eclipse.ui.views.properties.PropertySheetViewer.applyEditorValue(PropertySheetViewer.java:193)
	at org.eclipse.ui.views.properties.PropertySheetViewer.setInput(PropertySheetViewer.java:696)
	at org.eclipse.ui.views.properties.PropertySheetPage.selectionChanged(PropertySheetPage.java:229)
	at org.eclipse.ui.views.properties.PropertySheet.selectionChanged(PropertySheet.java:199)
	at org.eclipse.ui.internal.SelectionService$2.run(SelectionService.java:48)
	at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:814)
	at org.eclipse.core.runtime.Platform.run(Platform.java:395)
	at org.eclipse.ui.internal.SelectionService.fireSelection(SelectionService.java:46)
	at org.eclipse.ui.internal.SelectionService.partActivated(SelectionService.java:87)
	at org.eclipse.ui.internal.WorkbenchPage.firePartActivated(WorkbenchPage.java:579)
	at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:1275)
	at org.eclipse.ui.internal.WorkbenchPage.requestActivation(WorkbenchPage.java:1097)
	at org.eclipse.ui.internal.PartPane.requestActivation(PartPane.java:216)
	at org.eclipse.ui.internal.PartPane.handleEvent(PartPane.java:174)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java(Compiled Code))
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:840)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java(Compiled Code))
	at org.eclipse.swt.widgets.Shell.setActiveControl(Shell.java:660)
	at org.eclipse.swt.widgets.Shell.WM_MOUSEACTIVATE(Shell.java:899)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java(Compiled Code))
	at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java(Compiled Code))
	at org.eclipse.swt.widgets.Display.windowProc(Display.java(Compiled Code))
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java(Compiled Code))
	at org.eclipse.swt.widgets.Control.windowProc(Control.java(Compiled Code))
	at org.eclipse.swt.widgets.Display.windowProc(Display.java(Compiled Code))
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java(Compiled Code))
	at org.eclipse.swt.widgets.Control.windowProc(Control.java(Compiled Code))
	at org.eclipse.swt.widgets.Display.windowProc(Display.java(Compiled Code))
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java(Compiled Code))
	at org.eclipse.swt.widgets.Control.windowProc(Control.java(Compiled Code))
	at org.eclipse.swt.widgets.Display.windowProc(Display.java(Compiled Code))
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java(Compiled Code))
	at org.eclipse.swt.widgets.Control.windowProc(Control.java(Compiled Code))
	at org.eclipse.swt.widgets.Display.windowProc(Display.java(Compiled Code))
	at org.eclipse.swt.internal.win32.OS.CallWindowProc(Native Method)
	at org.eclipse.swt.widgets.Table.callWindowProc(Table.java:119)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java(Compiled Code))
	at org.eclipse.swt.widgets.Display.windowProc(Display.java(Compiled Code))
	at org.eclipse.swt.internal.win32.OS.PeekMessage(Native Method)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code))
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code))
	at org.eclipse.ui.internal.Workbench.run(Workbench.java:658)
	at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:820)
	at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285)
	at java.lang.reflect.Method.invoke(Native Method)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:151)
	at org.eclipse.core.launcher.Main.run(Main.java:502)
	at org.eclipse.core.launcher.UIMain.main(UIMain.java:52)

JGS (10/10/01 1:17:55 PM)
	Problem appears to occur any time an editable widget is given focus in the property sheet,
	then some other object is selected in the workbench so that the contents of the property
	sheet changes.

RG (10/10/01 3:35:44 PM)
	See 1GL4ZQA: ITPUI:WINNT - Workbench crash
Comment 1 Darin Wright CLA 2001-10-11 12:29:16 EDT
This bug is claimed to be fixed in 204 build. Needs verification.
Comment 2 Darin Wright CLA 2001-10-11 12:30:00 EDT
*** Bug 1755 has been marked as a duplicate of this bug. ***
Comment 3 Darin Wright CLA 2001-10-11 12:30:30 EDT
*** Bug 1754 has been marked as a duplicate of this bug. ***
Comment 4 Joe Szurszewski CLA 2001-10-17 12:36:16 EDT
This problem is still present, reproduceable as originally documented.
Comment 5 Joe Szurszewski CLA 2001-10-17 13:52:06 EDT
Re-opening.
Comment 6 Randy Giffen CLA 2001-10-17 14:05:27 EDT
I could not reproduce this in 204
Here is what I tried

1. Created the following class
public class Loop {
	public static void main(String[] args) {
		boolean t = true;
		while(t) {
			System.out.println("asd");
		}
	}
}
2. Set a breakpoint on the println
3. Ran (Debug) the class
4. When stopped I selected the breakpoint and in the property sheet set enabled
to false (leaving the cell editor active).
5. Pressed resume

Comment 7 Darin Wright CLA 2001-10-17 15:06:47 EDT
Perhaps this is because we are using a different version of the workbench
from the ZRH team stream.
Comment 8 Darin Wright CLA 2001-10-19 16:21:39 EDT
When I use the 205 workbench code, I have no problem.
Comment 9 Darin Wright CLA 2001-10-19 16:22:32 EDT
Verified.