Bug 139986 [CommonNavigator] Convert catch(Error/Throwable) to SafeRunner
In several places the CN framework uses catch(Error/Throwable) to ensure that code does not bring the framework down. Change these to use SafeRunner.
bundles/org.eclipse.ui.navigator/src/org/eclipse/ui/internal/navigator/extensions/StructuredViewerManager.java
}
		return result;
	}
	/**
	 * 
	 */
	public void safeRefresh() {
		final Viewer localViewer = viewer;
		if (localViewer == null || localViewer.getControl().isDisposed())
			return;
		Display display = localViewer.getControl().getDisplay();
		if (display.isDisposed())
			return;
		display.syncExec(new Runnable() {
			public void run() {
				if (localViewer.getControl().isDisposed())
					return;
				try {
					localViewer.getControl().setRedraw(false);
					localViewer.refresh();
				} catch (RuntimeException e) {
					NavigatorPlugin.logError(0, e.toString(), e);
				} finally {
					localViewer.getControl().setRedraw(true);
				}
			}
		});
	}
}