Program: 64926
Project: 64926
Buggy source:
protected void okPressed(){
  try {
    ComputedColumnHandle newBindingColumn=null;
    if (bindingColumn != null) {
      if (dialogHelper.differs(bindingColumn)) {
        if (isNeedPrompt() && isBindingMultipleReferenced()) {
          MessageDialog dialog=new MessageDialog(UIUtil.getDefaultShell(),Messages.getString("String_Node_Str"),null,Messages.getString("String_Node_Str"),MessageDialog.QUESTION,new String[]{Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str")},0);
          int dialogClick=dialog.open();
          if (dialogClick == 0) {
            InputDialog inputDialog=new InputDialog(UIUtil.getDefaultShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"),"String_Node_Str",new IInputValidator(){
              public String isValid(              String newText){
                for (Iterator iterator=DEUtil.getBindingHolder(bindingObject).getColumnBindings().iterator(); iterator.hasNext(); ) {
                  ComputedColumnHandle computedColumn=(ComputedColumnHandle)iterator.next();
                  if (computedColumn.getName().equals(newText)) {
                    return Messages.getFormattedString("String_Node_Str",new Object[]{newText});
                  }
                }
                return null;
              }
            }
);
            if (inputDialog.open() == Window.OK) {
              bindingColumn=dialogHelper.newBinding(DEUtil.getBindingHolder(bindingObject),inputDialog.getValue());
              super.okPressed();
              return;
            }
 else {
              return;
            }
          }
 else           if (dialogClick == 2) {
            return;
          }
        }
        if (!dialogHelper.canProcessWithWarning())         return;
        bindingColumn=dialogHelper.editBinding(bindingColumn);
      }
    }
 else {
      if (!dialogHelper.canProcessWithWarning())       return;
      if (bindSelf)       bindingColumn=dialogHelper.newBinding(bindingObject,null);
 else       bindingColumn=dialogHelper.newBinding(DEUtil.getBindingHolder(bindingObject),null);
      newBindingColumn=bindingColumn;
    }
    if (ExtendedDataModelUIAdapterHelper.isBoundToExtendedData(DEUtil.getBindingHolder(bindingObject))) {
      DataModelAdapterStatus status=DataModelAdapterUtil.validateRelativeTimePeriod(DEUtil.getBindingHolder(bindingObject),bindingColumn);
      if (status.getStatus() == DataModelAdapterStatus.Status.FAIL) {
        MessageDialog.openError(UIUtil.getDefaultShell(),null,status.getMessage());
        removeColumnBinding(newBindingColumn);
        return;
      }
    }
    if (ExtendedDataModelUIAdapterHelper.isBoundToExtendedData(DEUtil.getBindingHolder(bindingObject))) {
      IStatus status=DataModelAdapterUtil.validateRelativeTimePeriod(DEUtil.getBindingHolder(bindingObject),bindingColumn);
      if (status.getSeverity() == IStatus.ERROR) {
        MessageDialog.openError(UIUtil.getDefaultShell(),null,status.getMessage());
        return;
      }
    }
    super.okPressed();
  }
 catch (  Exception e) {
    ExceptionHandler.handle(e);
  }
}

Fixed version (ground truth):
protected void okPressed(){
  try {
    ComputedColumnHandle newBindingColumn=null;
    if (bindingColumn != null) {
      if (dialogHelper.differs(bindingColumn)) {
        if (isNeedPrompt() && isBindingMultipleReferenced()) {
          MessageDialog dialog=new MessageDialog(UIUtil.getDefaultShell(),Messages.getString("String_Node_Str"),null,Messages.getString("String_Node_Str"),MessageDialog.QUESTION,new String[]{Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str")},0);
          int dialogClick=dialog.open();
          if (dialogClick == 0) {
            InputDialog inputDialog=new InputDialog(UIUtil.getDefaultShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"),"String_Node_Str",new IInputValidator(){
              public String isValid(              String newText){
                for (Iterator iterator=DEUtil.getBindingHolder(bindingObject).getColumnBindings().iterator(); iterator.hasNext(); ) {
                  ComputedColumnHandle computedColumn=(ComputedColumnHandle)iterator.next();
                  if (computedColumn.getName().equals(newText)) {
                    return Messages.getFormattedString("String_Node_Str",new Object[]{newText});
                  }
                }
                return null;
              }
            }
);
            if (inputDialog.open() == Window.OK) {
              bindingColumn=dialogHelper.newBinding(DEUtil.getBindingHolder(bindingObject),inputDialog.getValue());
              super.okPressed();
              return;
            }
 else {
              return;
            }
          }
 else           if (dialogClick == 2) {
            return;
          }
        }
        if (!dialogHelper.canProcessWithWarning())         return;
        bindingColumn=dialogHelper.editBinding(bindingColumn);
      }
    }
 else {
      if (!dialogHelper.canProcessWithWarning())       return;
      if (bindSelf)       bindingColumn=dialogHelper.newBinding(bindingObject,null);
 else       bindingColumn=dialogHelper.newBinding(DEUtil.getBindingHolder(bindingObject),null);
      newBindingColumn=bindingColumn;
    }
    if (ExtendedDataModelUIAdapterHelper.isBoundToExtendedData(DEUtil.getBindingHolder(bindingObject))) {
      DataModelAdapterStatus status=DataModelAdapterUtil.validateRelativeTimePeriod(DEUtil.getBindingHolder(bindingObject),bindingColumn);
      if (status.getStatus() == DataModelAdapterStatus.Status.FAIL) {
        MessageDialog.openError(UIUtil.getDefaultShell(),null,status.getMessage());
        removeColumnBinding(newBindingColumn);
        return;
      }
    }
    if (ExtendedDataModelUIAdapterHelper.isBoundToExtendedData(DEUtil.getBindingHolder(bindingObject))) {
      DataModelAdapterStatus status=DataModelAdapterUtil.validateRelativeTimePeriod(DEUtil.getBindingHolder(bindingObject),bindingColumn);
      if (status.getStatus() == DataModelAdapterStatus.Status.FAIL) {
        MessageDialog.openError(UIUtil.getDefaultShell(),null,status.getMessage());
        return;
      }
    }
    super.okPressed();
  }
 catch (  Exception e) {
    ExceptionHandler.handle(e);
  }
}