Project: SWT
Bug 234271 Invalid thread access logged in the .log file
Reported: 2008-05-27 18:34:35 | Status: resolved fixed

I got this: org.eclipse.swt.SWTException: Invalid thread access at org.eclipse.swt.SWT.error(SWT.java:3775) at org.eclipse.swt.SWT.error(SWT.java:3693) at org.eclipse.swt.SWT.error(SWT.java:3664) at org.eclipse.swt.widgets.Display.error(Display.java:1158) at org.eclipse.swt.widgets.Display.checkDevice(Display.java:683) at org.eclipse.swt.widgets.Display.map(Display.java:2750) at org.eclipse.ui.internal.presentations.PaneFolder.layout(PaneFolder.java:524) at org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder.layout(DefaultTabFolder.java:382) at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.layout(PresentablePartFolder.java:408) at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:292) at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65) at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:473) at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1256) at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1209) at org.eclipse.ui.internal.PerspectiveHelper.bringPartToTop(PerspectiveHelper.java:443) at org.eclipse.ui.internal.Perspective.bringToTop(Perspective.java:217) at org.eclipse.ui.internal.WorkbenchPage.internalBringToTop(WorkbenchPage.java:792) at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:609) at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1086) at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1057) at org.eclipse.ui.internal.WorkbenchPage$19.run(WorkbenchPage.java:3773) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3770) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3746) at org.eclipse.ui.internal.progress.ProgressManagerUtil.openProgressView(ProgressManagerUtil.java:129) at org.eclipse.ui.internal.progress.ProgressRegion.processDoubleClick(ProgressRegion.java:199) at org.eclipse.ui.internal.progress.ProgressRegion$3.mouseDoubleClick(ProgressRegion.java:163) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:182) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1002) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3801) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3400) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2387) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2351) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2203) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:112) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:379) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:612) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) at org.eclipse.equinox.launcher.Main.main(Main.java:1212) using eclipse.buildId=I20080523-0100 java.fullversion=J2RE 1.6.0 IBM J9 2.4 Windows XP x86-32 jvmwi3260-20071121_15015 (JIT enabled) J9VM - 20071121_015015_lHdSMR JIT - r9_20071121_1330 GC - 20071031_AA BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=fr_CA Command-line arguments: -os win32 -ws win32 -arch x86 -consolelog -console Right after this, I got the NPE reported earlier.

Files changed in fix:
bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Display.java bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Widget.java