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/extensions/NavigatorContentDescriptorManager.java
evaluationsWithOverrides.clear();
		}
	}
	
	private final Map cachedTriggerPointEvaluations = new WeakHashMap();
	
	private final Map cachedPossibleChildrenEvaluations = new WeakHashMap();
	private ImageRegistry imageRegistry;
	private final Set overridingDescriptors = new HashSet();
	private final Set saveablesProviderDescriptors = new HashSet();
	
	private final Set firstClassDescriptorsSet = new HashSet();
	/**
	 * @return the singleton instance of the manager
	 */
	public static NavigatorContentDescriptorManager getInstance() {
		return INSTANCE;
	}
	private NavigatorContentDescriptorManager() {
		new NavigatorContentDescriptorRegistry().readRegistry();
	}
	/**
	 * 
	 * @return Returns all content descriptor(s).
	 */
	public NavigatorContentDescriptor[] getAllContentDescriptors() {
		NavigatorContentDescriptor[] finalDescriptors = new NavigatorContentDescriptor[allDescriptors
				.size()];
		finalDescriptors = (NavigatorContentDescriptor[]) allDescriptors.values().toArray(finalDescriptors);
		Arrays.sort(finalDescriptors, ExtensionPriorityComparator.INSTANCE);