Program: 148280
Project: 148280
Buggy source:
protected Control createDialogArea(Composite parent){
  Composite composite=(Composite)super.createDialogArea(parent);
  parent.getShell().setText(this.title);
  composite.setLayout(new GridLayout(1,false));
  Label instanceNameLabel=new Label(composite,SWT.NONE);
  instanceNameLabel.setLayoutData(new GridData(SWT.FILL,SWT.FILL,true,true,1,1));
  instanceNameLabel.setText("String_Node_Str");
  instanceNameText=new Text(composite,SWT.SINGLE | SWT.BORDER);
  instanceNameText.setLayoutData(new GridData(SWT.FILL,SWT.FILL,false,true,1,1));
  instanceNameText.setFocus();
  instanceNameText.addModifyListener(new ModifyListener(){
    public void modifyText(    ModifyEvent e){
      String name=instanceNameText.getText().trim();
      boolean enable=(name.length() > 0) && (!"String_Node_Str".equals(name)) && (name.replaceAll("String_Node_Str","String_Node_Str").length() == name.length());
      RoleAssignmentDialog.this.getButton(IDialogConstants.OK_ID).setEnabled(enable);
    }
  }
);
  Label infoLabel=new Label(composite,SWT.NONE);
  infoLabel.setText("String_Node_Str");
  ComplexTableViewerColumn ruleColumn=roleConfigurationColumns[0];
  ruleColumn.setColumnWidth(250);
  List<String> roles=Util.getChildren(root.getServerRoot(),TreeObject.ROLE);
  ruleColumn.setComboValues(roles.toArray(new String[]{}));
  ComplexTableViewerColumn acsColumn=roleConfigurationColumns[1];
  acsColumn.setColumnWidth(250);
  acsColumn.setComboValues(new String[]{"String_Node_Str","String_Node_Str"});
  FormToolkit toolkit=WidgetFactory.getWidgetFactory();
  complexTableViewer=new ComplexTableViewer(Arrays.asList(roleConfigurationColumns),toolkit,composite);
  complexTableViewer.setKeyColumns(new ComplexTableViewerColumn[]{roleConfigurationColumns[0]});
  complexTableViewer.create();
  complexTableViewer.getViewer().setInput(new ArrayList<Line>());
  return composite;
}

Fixed version (ground truth):
protected Control createDialogArea(Composite parent){
  Composite composite=(Composite)super.createDialogArea(parent);
  parent.getShell().setText(this.title);
  composite.setLayout(new GridLayout(1,false));
  Label instanceNameLabel=new Label(composite,SWT.NONE);
  instanceNameLabel.setLayoutData(new GridData(SWT.FILL,SWT.FILL,true,true,1,1));
  instanceNameLabel.setText("String_Node_Str");
  instanceNameText=new Text(composite,SWT.SINGLE | SWT.BORDER);
  instanceNameText.setLayoutData(new GridData(SWT.FILL,SWT.FILL,false,true,1,1));
  instanceNameText.setFocus();
  instanceNameText.addModifyListener(new ModifyListener(){
    public void modifyText(    ModifyEvent e){
      String name=instanceNameText.getText().trim();
      boolean enable=(name.length() > 0) && (!"String_Node_Str".equals(name)) && (name.replaceAll("String_Node_Str","String_Node_Str").length() == name.length());
      RoleAssignmentDialog.this.getButton(IDialogConstants.OK_ID).setEnabled(enable);
    }
  }
);
  if (Util.IsEnterPrise()) {
    Label infoLabel=new Label(composite,SWT.NONE);
    infoLabel.setText("String_Node_Str");
    ComplexTableViewerColumn ruleColumn=roleConfigurationColumns[0];
    ruleColumn.setColumnWidth(250);
    List<String> roles=Util.getChildren(root.getServerRoot(),TreeObject.ROLE);
    ruleColumn.setComboValues(roles.toArray(new String[]{}));
    ComplexTableViewerColumn acsColumn=roleConfigurationColumns[1];
    acsColumn.setColumnWidth(250);
    acsColumn.setComboValues(new String[]{"String_Node_Str","String_Node_Str"});
    FormToolkit toolkit=WidgetFactory.getWidgetFactory();
    complexTableViewer=new ComplexTableViewer(Arrays.asList(roleConfigurationColumns),toolkit,composite);
    complexTableViewer.setKeyColumns(new ComplexTableViewerColumn[]{roleConfigurationColumns[0]});
    complexTableViewer.create();
    complexTableViewer.getViewer().setInput(new ArrayList<Line>());
  }
  return composite;
}