Buggy code:
public class DecoratorManager implements IDecoratorManager , ILabelDecorator , ILabelProviderListener { private DecorationScheduler scheduler ; private LightweightDecoratorManager lightweightManager ; private ListenerList listeners = new ListenerList ( ) ; private HashMap cachedFullDecorators = new HashMap ( ) ; private FullDecoratorDefinition [ ] fullDefinitions ; private static final FullDecoratorDefinition [ ] EMPTY_FULL_DEF = new FullDecoratorDefinition [ 0 ] ; private final String PREFERENCE_SEPARATOR = "," ; private final String VALUE_SEPARATOR = ":" ; private final String P_TRUE = "true" ; private final String P_FALSE = "false" ; public DecoratorManager ( ) { } static Collection getDecoratorsFor ( Object element , DecoratorDefinition [ ] enabledDefinitions ) { ArrayList decorators = new ArrayList ( ) ; for ( int i = 0 ; i < ( enabledDefinitions . length ) ; i ++ ) { <START_BUG> if ( enabledDefinitions [ i ] . getEnablement ( ) . isEnabledForExpression ( element , ATT_OBJECT_CLASS ) ) <END_BUG> decorators . add ( enabledDefinitions [ i ] ) ; } return decorators ; } public void restoreListeners ( ) { } public void addListener ( ILabelProviderListener listener ) { } public void removeListener ( ILabelProviderListener listener ) { } private void fireListeners ( final LabelProviderChangedEvent event ) { } public String decorateText ( String text , Object element ) { } public Image decorateImage ( Image image , Object element ) { } private Object getResourceAdapter ( Object element ) { } public boolean isLabelProperty ( Object element , String property ) { } public boolean isLabelProperty ( Object element , String property , boolean checkAdapted ) { } private boolean isLabelProperty ( Object element , String property , DecoratorDefinition [ ] decorators ) { } private Vector computeClassOrder ( Class extensibleClass ) { } private List computeInterfaceOrder ( List classList ) { } private void internalComputeInterfaceOrder ( Class [ ] interfaces , List result , Map seen ) { } private FullDecoratorDefinition [ ] enabledFullDefinitions ( ) { } public void dispose ( ) { } public void reset ( ) { } public DecoratorDefinition [ ] getAllDecoratorDefinitions ( ) { } public void labelProviderChanged ( LabelProviderChangedEvent event ) { } private void writeDecoratorsPreference ( ) { } private void writeDecoratorsPreference ( StringBuffer enabledIds , DecoratorDefinition [ ] definitions ) { } private void applyDecoratorsPreference ( ) { } public void shutdown ( ) { } public boolean getEnabled ( String decoratorId ) { } public ILabelDecorator getLabelDecorator ( ) { } public void setEnabled ( String decoratorId , boolean enabled ) throws CoreException { } public IBaseLabelProvider getBaseLabelProvider ( String decoratorId ) { } public ILabelDecorator getLabelDecorator ( String decoratorId ) { } public ILightweightLabelDecorator getLightweightLabelDecorator ( String decoratorId ) { } private DecoratorDefinition getDecoratorDefinition ( String decoratorId ) { } private FullDecoratorDefinition getFullDecoratorDefinition ( String decoratorId ) { } private FullDecoratorDefinition [ ] getDecoratorsFor ( Object element ) { } LightweightDecoratorManager getLightweightManager ( ) { } public void update ( String decoratorId ) { } }

Fix:
if ( enabledDefinitions [ i ] . getEnablement ( ) . isEnabledForExpression ( element , EXP_TYPE_OBJECT_CLASS ) )