Project: Eclipse_Platform_UI
Bug 62839 [Viewers] Invalid thread access when turning on decorators
Reported: 2004-05-18 23:34:00 | Status: verified fixed

Build: I-20040518-2000 I imported a plug-in project as binary. I then went to the label decorations preference page to turn on the binary decorators. I got the following exception: Error May 18, 2004 23:19:19.484 Problems occurred when invoking code from plug- in: "org.eclipse.core.runtime". org.eclipse.swt.SWTException: Invalid thread access at org.eclipse.swt.SWT.error(SWT.java:2689) at org.eclipse.swt.SWT.error(SWT.java:2614) at org.eclipse.swt.SWT.error(SWT.java:2585) at org.eclipse.swt.widgets.Widget.error(Widget.java:381) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:284) at org.eclipse.swt.widgets.Tree.setRedraw(Tree.java:1018) at org.eclipse.jface.viewers.AbstractTreeViewer.labelProviderChanged (AbstractTreeViewer.java:1159) at org.eclipse.jface.viewers.ContentViewer.handleLabelProviderChanged (ContentViewer.java:161) at org.eclipse.jface.viewers.StructuredViewer.handleLabelProviderChanged (StructuredViewer.java:677) at org.eclipse.jdt.internal.ui.viewsupport.ProblemTreeViewer.handleLabelProviderCh anged(ProblemTreeViewer.java:123) at org.eclipse.jface.viewers.ContentViewer$1.labelProviderChanged (ContentViewer.java:74) at org.eclipse.ui.internal.decorators.DecoratorManager$1.run (DecoratorManager.java:180) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:608) at org.eclipse.core.runtime.Platform.run(Platform.java:758) at org.eclipse.ui.internal.decorators.DecoratorManager.fireListeners (DecoratorManager.java:178) at org.eclipse.ui.internal.decorators.DecoratorManager.updateForEnablementChange (DecoratorManager.java:437) at org.eclipse.ui.internal.decorators.DecoratorManager.setEnabled (DecoratorManager.java:612) at org.eclipse.team.internal.ccvs.ui.CVSUIPlugin.startup(CVSUIPlugin.java:676) at org.eclipse.core.internal.compatibility.PluginActivator.start (PluginActivator.java:49) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run (BundleContextImpl.java:958) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator (BundleContextImpl.java:954) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start (BundleContextImpl.java:937) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker (BundleHost.java:421) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start (AbstractBundle.java:293) at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass (EclipseClassLoader.java:110) at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass (BundleLoader.java:371) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass (BundleLoader.java:402) at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass (AbstractClassLoader.java:93) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass (BundleLoader.java:307) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass (BundleHost.java:336) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass (AbstractBundle.java:1312) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtensi on(ConfigurationElement.java:131) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtensi on(ConfigurationElement.java:124) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtensi on(ConfigurationElement.java:113) at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:186) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:51) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension (WorkbenchPlugin.java:183) at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition$1.run (LightweightDecoratorDefinition.java:83) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:608) at org.eclipse.core.runtime.Platform.run(Platform.java:758) at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.internalGetDe corator(LightweightDecoratorDefinition.java:79) at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.decorate (LightweightDecoratorDefinition.java:153) at org.eclipse.ui.internal.decorators.LightweightDecoratorManager$LightweightRunna ble.run(LightweightDecoratorManager.java:60) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:608) at org.eclipse.core.runtime.Platform.run(Platform.java:758) at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.decorate (LightweightDecoratorManager.java:258) at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.getDecorations (LightweightDecoratorManager.java:241) at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run (DecorationScheduler.java:262) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorManager.java