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/NavigatorContentServiceContentProvider.java
}
			} catch (Throwable e) {
				NavigatorPlugin.logError(0, NLS.bind(CommonNavigatorMessages.Exception_Invoking_Extension,
						new Object[] { foundExtension.getDescriptor().getId(), anElement }), e);
			}
		}
		return parents;
	}
	private Object findParent(NavigatorContentExtension anExtension, Object anElement, Object aSuggestedParent) {
		
		Object lastValidParent = aSuggestedParent;
		
		Object suggestedOverriddenParent = null;
		IPipelinedTreeContentProvider piplineContentProvider;
		NavigatorContentExtension[] overridingExtensions = anExtension
				.getOverridingExtensionsForPossibleChild(anElement);
		for (int i = 0; i < overridingExtensions.length; i++) {
			if (overridingExtensions[i].internalGetContentProvider().isPipelined()) {
				piplineContentProvider = (IPipelinedTreeContentProvider) overridingExtensions[i].internalGetContentProvider();
				suggestedOverriddenParent = piplineContentProvider.getPipelinedParent(anElement, lastValidParent);
				if (suggestedOverriddenParent != null && !suggestedOverriddenParent.equals(aSuggestedParent))
					lastValidParent = suggestedOverriddenParent;
				
				lastValidParent = findParent(overridingExtensions[i], anElement, lastValidParent);
			}
		}
		return lastValidParent;
	}
}