Bug 82605 Invalid thread access updating build actions
Build: I20050110 org.eclipse.swt.SWTException: Invalid thread access at org.eclipse.swt.SWT.error(SWT.java:2827) at org.eclipse.swt.SWT.error(SWT.java:2752) at org.eclipse.swt.SWT.error(SWT.java:2723) at org.eclipse.swt.widgets.Widget.error(Widget.java:388) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:291) at org.eclipse.swt.widgets.ToolBar.getItemCount(ToolBar.java:431) at org.eclipse.jface.action.ToolBarManager.update(ToolBarManager.java:210) at org.eclipse.ui.internal.ide.WorkbenchActionBuilder.updateBuildActions(WorkbenchActionBuilder.java:1597) at org.eclipse.ui.internal.ide.WorkbenchActionBuilder$7.resourceChanged(WorkbenchActionBuilder.java:349) at org.eclipse.core.internal.events.NotificationManager$2.run(NotificationManager.java:283) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1007) at org.eclipse.core.runtime.Platform.run(Platform.java:747) at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:277) at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:151) at org.eclipse.core.internal.resources.Workspace.broadcastChanges(Workspace.java:175) at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:917) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1712) at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:3549) at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:65) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:111)
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/WorkbenchActionBuilder.java
goToSubMenu.add(backAction);
        goToSubMenu.add(forwardAction);
        goToSubMenu.add(upAction);
        goToSubMenu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
        menu.add(new Separator(IWorkbenchActionConstants.OPEN_EXT));
        for (int i = 2; i < 5; ++i) {
            menu.add(new Separator(IWorkbenchActionConstants.OPEN_EXT + i));
        }
        menu.add(new Separator(IWorkbenchActionConstants.SHOW_EXT));
        {
            MenuManager showInSubMenu = new MenuManager(IDEWorkbenchMessages
                    .getString("Workbench.showIn"), "showIn") { 
                public String getMenuText() {
                    String result = super.getMenuText();
                    if (showInQuickMenu == null)
                        return null;
                    String shortCut = showInQuickMenu.getShortCutString();
                    if (shortCut == null)
                        return result;
                    return result + "\t" + shortCut; 
                }
            };
            showInSubMenu.add(ContributionItemFactory.VIEWS_SHOW_IN
                    .create(getWindow()));
            menu.add(showInSubMenu);
        }
        for (int i = 2; i < 5; ++i) {
            menu.add(new Separator(IWorkbenchActionConstants.SHOW_EXT + i));
        }
        menu.add(new Separator());