Bug 261147 [CommonNavigator] Navigator label provider uses inconsistent methods to do the same thing
In NavigatorContentServiceLabelProvider some of the methods use findContentExtensionsWithPossibleChild and others use findRelevantLabelProvider. The latter is better and they should all use that one.
bundles/org.eclipse.ui.navigator/src/org/eclipse/ui/internal/navigator/NavigatorContentServiceLabelProvider.java
}
		
		return (text == null)? (new StyledString(NLS.bind(CommonNavigatorMessages.NavigatorContentServiceLabelProvider_Error_no_label_provider_for_0_, anElement))) : text; 
	}
	
	/**
	 * Search for a styled text label and take overrides into account. 
	 * Uses only simple ITreeContentProvider.getParent() style semantics. 
	 * 
	 * @returns the styled text or <code>null</code> if no extension has been found that provides a label
	 */
	private StyledString findStyledText(NavigatorContentExtension foundExtension, Object anElement) { 
		INavigatorContentDescriptor foundDescriptor;
		ICommonLabelProvider labelProvider= foundExtension.getLabelProvider();
		if (labelProvider instanceof IStyledLabelProvider) {
			StyledString styledText= ((IStyledLabelProvider) labelProvider).getStyledText(anElement);
			
			if (styledText != null && styledText.length() > 0) {
				return styledText;
			}
		} else {
			String text= labelProvider.getText(anElement);
			if (text != null) {
				return new StyledString(text);
			}
		}
		if ((foundDescriptor = foundExtension.getDescriptor()).getOverriddenDescriptor() != null) {
			return findStyledText(contentService.getExtension(foundDescriptor.getOverriddenDescriptor()), anElement);
		}  
		return null;