Bug 339877 ToolBarManagerRenderer should not dispose of items that weren't created by the rendering engine
1. Window > Open Perspective > CVS Repository Exploring 2. The 'CVS Repositories' view doesn't have the 'Add CVS Repository' tool item. 3. Resizing the view doesn't help. 4. Close the view. 5. Reopen it. 6. Now it's there. Or maybe not, it didn't come back for Paul anyway.
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/ToolBarManagerRenderer.java
for (MMenu menu : part.getMenus()) {
			if (menu.getTags().contains(StackRenderer.TAG_VIEW_MENU)) {
				return menu;
			}
		}
		return null;
	}
	boolean hasOnlySeparators(ToolBar toolbar) {
		ToolItem[] children = toolbar.getItems();
		for (ToolItem toolItem : children) {
			if ((toolItem.getStyle() & SWT.SEPARATOR) == 0) {
				return false;
			} else if (toolItem.getControl() != null
					&& toolItem.getControl().getData(OWNING_ME) instanceof MToolControl) {
				return false;
			}
		}
		return true;
	}
	@Override
	public void postProcess(MUIElement element) {
		super.postProcess(element);
		disposeToolbarIfNecessary((MToolBar) element);
		ToolBar tb = getToolbarFrom(element.getWidget());
		if (tb != null && !tb.isDisposed()) {
			tb.setVisible(true);
			tb.getShell().layout(new Control[] { tb }, SWT.DEFER);
			tb.getShell().layout(
					new Control[] { (Control) element.getWidget() });
		}