Bug 87089 [Viewers] LabelProvider.getImage is not invoked after the TreeViewer changes introduced on 24/01/2005
If you compare the versions 1.26 and 1.25 of the method doUpdateItem(Item item, Object element) in org.eclipse.jface.viewers.TreeViewer, you will notice a change in the way the image of the element is calculated. In 1.25, the image of the Element is set in the "buildLabel" method which doesn't have a special treatment for ITableLabelProvider. In 1.26, if the label provider is a ITableLabelProvider, instead of calling ILabelProvider.getImage(Object), the code always invokes ITableLabelProvider.getColunmImage(Object). This change has broken the icons on one of the EMF generated editors (the mapping editor) as the images I will attach here demostrate.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TreeViewer.java
/* (non-Javadoc)
     * Method declared in AbstractTreeViewer.
     */
    protected void doUpdateItem(final Item item, Object element) {
		 if (!(item instanceof TreeItem)) return;
        TreeItem treeItem = (TreeItem)item;
        if (treeItem.isDisposed()) {
            unmapElement(element);
            return;
        }        
        
        colorAndFontCollector.setFontsAndColors(element);
        
        IBaseLabelProvider prov = getLabelProvider();
		ITableLabelProvider tprov = null;
		if (prov instanceof ITableLabelProvider) {
			tprov = (ITableLabelProvider) prov;
		} 
        int columnCount = tree.getColumnCount();
		for (int column = 0; column < columnCount || column == 0; column++) {
			
			String text = "";
			Image image = null;
			treeColorAndFont.setFontsAndColors(treeItem, element,column);
			if (tprov == null) {
				if (column == 0) {
					ViewerLabel updateLabel = new ViewerLabel(treeItem
							.getText(), treeItem.getImage());
					buildLabel(updateLabel,element);