Bug 139511 [CommonNavigator] getParent() fails in certain cases
In the implementation of getParents(), clients can sometimes fail to return the correct parent with the override cases taken into account. The attached patch fixes these issues, but should be reviewed by the Team Team to ensure that it does not cause any regressions for their cases.
bundles/org.eclipse.ui.navigator/src/org/eclipse/ui/internal/navigator/NavigatorContentServiceContentProvider.java
/**
	 * Return the objects as a set.
	 * @param objects the objects
	 * @return a set that contains the objects
	 */
	private Set asSet(Object[] objects) {
		Set parentPaths = new HashSet();
		parentPaths.addAll(Arrays.asList(objects));
		return parentPaths;
	}
	
	/**
	 * Query each of <code>theOverridingExtensions</code> for in order
	 * to adjust the parent paths of the contributor of the element.
	 * 
	 * TODO: This method would be cleaner if TreePaths were added to the pipeline API.
	 * 
	 * @param anInputElement
	 *            The input element in the tree
	 * @param theOverridingExtensions
	 *            The set of overriding extensions that should participate in
	 *            the pipeline chain
	 * @param theParentPaths
	 *            The current elements to return to the viewer (should be
	 *            modifiable)
	 * @return The set of elements to return to the viewer
	 */
	private Set pipelineParents(Object anInputElement,
			NavigatorContentExtension[] theOverridingExtensions,
			Set theParentPaths) {