Program: 65315
Project: 65315
Buggy source:
protected Object openDialogBox(Control cellEditorWindow){
  ParameterDialog dialog=null;
  ParameterHandle handle=Utility.getScalarParameter(this.comboBox.getText());
  int mode=CREATE_MODE;
  if (handle == null) {
    handle=(ScalarParameterHandle)ElementProcessorFactory.createProcessor("String_Node_Str").createElement(null);
    dialog=new ParameterDialog(cellEditorWindow.getShell(),Messages.getString("String_Node_Str"));
    if (obj != null && obj instanceof OdaDataSetParameterHandle) {
      ReportParameterAdapter adapter=new ReportParameterAdapter();
      try {
        adapter.updateLinkedReportParameter((ScalarParameterHandle)handle,(OdaDataSetParameterHandle)obj);
      }
 catch (      SemanticException e) {
      }
    }
    mode=this.CREATE_MODE;
  }
 else {
    dialog=new ParameterDialog(cellEditorWindow.getShell(),Messages.getString("String_Node_Str"));
    mode=this.EDIT_MODE;
  }
  handle.addListener(this.listener);
  dialog.setInput(handle);
  if (dialog.open() == Dialog.OK) {
    if (dialog.getResult() instanceof ParameterHandle) {
      ParameterHandle paramerHandle=(ParameterHandle)dialog.getResult();
      if (mode == this.CREATE_MODE) {
        SlotHandle parameterSlotHandle=Utility.getReportModuleHandle().getParameters();
        try {
          parameterSlotHandle.add(paramerHandle);
          comboBox.add(paramerHandle.getQualifiedName());
        }
 catch (        ContentException e) {
          logger.log(Level.FINE,e.getMessage(),e);
        }
catch (        NameException e) {
          logger.log(Level.FINE,e.getMessage(),e);
        }
      }
      return paramerHandle.getQualifiedName();
    }
  }
  setFocus();
  return null;
}

Fixed version (ground truth):
protected Object openDialogBox(Control cellEditorWindow){
  ParameterDialog dialog=null;
  ParameterHandle handle=Utility.getScalarParameter(this.comboBox.getText());
  int mode=CREATE_MODE;
  if (handle == null) {
    handle=(ScalarParameterHandle)ElementProcessorFactory.createProcessor("String_Node_Str").createElement(null);
    dialog=new ParameterDialog(cellEditorWindow.getShell(),Messages.getString("String_Node_Str"));
    if (obj != null && obj instanceof OdaDataSetParameterHandle) {
      ReportParameterAdapter adapter=new ReportParameterAdapter();
      try {
        adapter.updateLinkedReportParameter((ScalarParameterHandle)handle,(OdaDataSetParameterHandle)obj);
      }
 catch (      SemanticException e) {
      }
    }
    mode=this.CREATE_MODE;
  }
 else {
    dialog=new ParameterDialog(cellEditorWindow.getShell(),Messages.getString("String_Node_Str"));
    mode=this.EDIT_MODE;
  }
  handle.addListener(this.listener);
  dialog.setInput(handle);
  if (dialog.open() == Dialog.OK) {
    if (dialog.getResult() instanceof ParameterHandle) {
      ParameterHandle paramerHandle=(ParameterHandle)dialog.getResult();
      if (mode == this.CREATE_MODE) {
        SlotHandle parameterSlotHandle=Utility.getReportModuleHandle().getParameters();
        try {
          parameterSlotHandle.add(paramerHandle);
          comboBox.add(paramerHandle.getQualifiedName());
        }
 catch (        ContentException e) {
          logger.log(Level.FINE,e.getMessage(),e);
        }
catch (        NameException e) {
          logger.log(Level.FINE,e.getMessage(),e);
        }
      }
      return paramerHandle.getQualifiedName();
    }
  }
  setFocus();
  handle.removeListener(this.listener);
  return null;
}