Program: 108088
Project: 108088
Buggy source:
@Override public void update(final ModelEvent event){
  if (event.part == ModelPart.SELECTED_ATTRIBUTE) {
    if (model != null) {
      SWTUtil.enable(root);
      attribute=model.getSelectedAttribute();
      updateAttributeType();
      updateFunction();
      updateMode();
      updateMinMax();
      hierarchy.setHierarchy(getHierarchy());
    }
  }
 else   if (event.part == ModelPart.MODEL) {
    SWTUtil.enable(root);
    model=(Model)event.data;
    attribute=model.getSelectedAttribute();
    updateAttributeType();
    updateFunction();
    updateMode();
    updateMinMax();
    hierarchy.setHierarchy(getHierarchy());
  }
 else   if (event.part == ModelPart.ATTRIBUTE_TYPE) {
    SWTUtil.enable(root);
    final String attr=(String)event.data;
    if (attr.equals(attribute)) {
      updateAttributeType();
    }
  }
 else   if (event.part == ModelPart.HIERARCHY) {
    SWTUtil.enable(root);
    if (attribute.equals(model.getSelectedAttribute())) {
      hierarchy.setHierarchy(getHierarchy());
      updateMinMax();
    }
  }
 else   if (event.part == ModelPart.INPUT) {
    SWTUtil.enable(root);
    attribute=model.getSelectedAttribute();
    updateAttributeType();
    updateMode();
    updateMinMax();
    hierarchy.setHierarchy(getHierarchy());
  }
 else   if (event.part == ModelPart.DATA_TYPE) {
    SWTUtil.enable(root);
    if (attribute.equals(model.getSelectedAttribute())) {
      updateFunction();
      updateMode();
    }
  }
 else   if (event.part == ModelPart.ATTRIBUTE_VALUE) {
    SWTUtil.enable(root);
    if (attribute.equals(model.getSelectedAttribute())) {
      hierarchy.setHierarchy(getHierarchy());
    }
  }
}

Fixed version (ground truth):
@Override public void update(final ModelEvent event){
  if (event.part == ModelPart.SELECTED_ATTRIBUTE) {
    if (model != null) {
      SWTUtil.enable(root);
      attribute=model.getSelectedAttribute();
      updateAttributeType();
      updateFunction();
      updateMode();
      updateMinMax();
      hierarchy.setHierarchy(getHierarchy());
    }
  }
 else   if (event.part == ModelPart.MODEL) {
    SWTUtil.enable(root);
    model=(Model)event.data;
    attribute=model.getSelectedAttribute();
    updateAttributeType();
    updateFunction();
    updateMode();
    updateMinMax();
    hierarchy.setHierarchy(getHierarchy());
  }
 else   if (event.part == ModelPart.ATTRIBUTE_TYPE) {
    SWTUtil.enable(root);
    final String attr=(String)event.data;
    if (attr.equals(attribute)) {
      updateAttributeType();
    }
  }
 else   if (event.part == ModelPart.HIERARCHY) {
    SWTUtil.enable(root);
    if (attribute.equals(model.getSelectedAttribute())) {
      hierarchy.setHierarchy(getHierarchy());
      updateMinMax();
    }
  }
 else   if (event.part == ModelPart.ATTRIBUTE_VALUE) {
    SWTUtil.enable(root);
    AuditTrailEntryFindReplace entry=(AuditTrailEntryFindReplace)event.data;
    if (entry.getAttribute().equals(attribute)) {
      hierarchy.setHierarchy(getHierarchy());
    }
  }
 else   if (event.part == ModelPart.INPUT) {
    SWTUtil.enable(root);
    attribute=model.getSelectedAttribute();
    updateAttributeType();
    updateMode();
    updateMinMax();
    hierarchy.setHierarchy(getHierarchy());
  }
 else   if (event.part == ModelPart.DATA_TYPE) {
    SWTUtil.enable(root);
    if (attribute.equals(model.getSelectedAttribute())) {
      updateFunction();
      updateMode();
    }
  }
 else   if (event.part == ModelPart.ATTRIBUTE_VALUE) {
    SWTUtil.enable(root);
    if (attribute.equals(model.getSelectedAttribute())) {
      hierarchy.setHierarchy(getHierarchy());
    }
  }
}