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/NavigatorContentService.java
* onExtensionActivation(java.lang.String, java.lang.String, boolean)
	 */
	public void onExtensionActivation(String aViewerId,
			String[] aNavigatorExtensionId, boolean toEnable) {
		synchronized (this) {
			try {
				NavigatorContentDescriptor key;
				NavigatorContentExtension extension;
				for (Iterator iter = contentExtensions.keySet().iterator(); iter
						.hasNext();) {
					key = (NavigatorContentDescriptor) iter.next();
					INavigatorActivationService activation = getActivationService();
					if (!activation.isNavigatorExtensionActive(key.getId())) {
						extension = (NavigatorContentExtension) contentExtensions
								.get(key);
						iter.remove();
						extension.dispose();
					}
				}
			} catch (RuntimeException e) {
				String msg = e.getMessage() != null ? e.getMessage() : e
						.toString();
				NavigatorPlugin.logError(0, msg, e);
			}
		}
		if (structuredViewerManager != null) {
			structuredViewerManager.resetViewerData();
		}
		update();
	}