Bug 166052 [Viewers] Regression: decorator of DecoratingLabelProvider completely replaces label provider
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/DecoratingLabelProvider.java
}
			if (decorator instanceof IFontDecorator) {
				Font font = ((IFontDecorator) decorator).decorateFont(element);
				if (font != null)
					settings.setFont(font);
			}
		}
	}
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.jface.viewers.ViewerLabelProvider#update(org.eclipse.jface.viewers.ViewerCell)
	 */
	public void update(ViewerCell cell) {
		ViewerLabel label = new ViewerLabel(cell.getText(), cell.getImage());
		
		label.setBackground(getBackground(cell.getElement()));
		label.setForeground(getForeground(cell.getElement()));
		label.setFont(getFont(cell.getElement()));
		updateLabel(label, cell.getElement());
		cell.setBackground(label.getBackground());
		cell.setForeground(label.getForeground());
		cell.setFont(label.getFont());
		if (label.hasNewText())
			cell.setText(label.getText());
		if (label.hasNewImage())
			cell.setImage(label.getImage());
	}
}