Program: 67372
Project: 67372
Buggy source:
private void refreshParameterProperties(){
  if (selectedParameter == null) {
    clearParamProperties();
    setControlEnabled(false);
    initDefaultValueViewer();
    return;
  }
  setControlEnabled(true);
  paramNameEditor.setText(selectedParameter.getName());
  if (selectedParameter.getPromptText() == null) {
    promptText.setText("String_Node_Str");
  }
 else {
    promptText.setText(selectedParameter.getPromptText());
  }
  dataTypeChooser.setText(DATA_TYPE_CHOICE_SET.findChoice(selectedParameter.getDataType()).getDisplayName());
  if (getInputDisplayName() == null) {
    displayTypeChooser.clearSelection();
  }
 else {
    displayTypeChooser.setText(getInputDisplayName());
  }
  Expression expression=getFirstDefaultValue();
  String defaultValue=expression == null ? null : expression.getStringExpression();
  String expressionType=expression == null ? null : expression.getType();
  if (expressionType != null) {
    defaultValueChooser.setData(ExpressionButtonUtil.EXPR_TYPE,expressionType);
    ExpressionButton button=(ExpressionButton)defaultValueChooser.getData(ExpressionButtonUtil.EXPR_BUTTON);
    if (button != null)     button.refresh();
  }
  if (getSelectedDataType().equals(DesignChoiceConstants.PARAM_TYPE_STRING)) {
    defaultValueChooser.setText(DEUtil.resolveNull(defaultValue));
  }
 else   if (defaultValue != null) {
    defaultValueChooser.setText(defaultValue);
  }
  helpTextEditor.setText(UIUtil.convertToGUIString(selectedParameter.getHelpText()));
  if (selectedParameter.getPropertyHandle(ScalarParameterHandle.LIST_LIMIT_PROP).isSet()) {
    listLimit.setText(String.valueOf(selectedParameter.getListlimit()));
  }
 else {
    listLimit.setText("String_Node_Str");
  }
  isRequired.setSelection(selectedParameter.isRequired());
  if (selectedParameter == inputParameterGroup.getParameters().get(inputParameterGroup.getParameters().getCount() - 1)) {
    isMultiple.setEnabled(true);
    isMultiple.setSelection(DesignChoiceConstants.SCALAR_PARAM_TYPE_MULTI_VALUE.equals(selectedParameter.getParamType()));
  }
 else {
    isMultiple.setEnabled(false);
    isMultiple.setSelection(false);
  }
  defaultValueList=selectedParameter.getDefaultValueList();
  initDefaultValueViewer();
  changeDataType(selectedParameter.getDataType());
  formatCategroy=selectedParameter.getCategory();
  formatPattern=selectedParameter.getPattern();
  updateFormatField();
}

Fixed version (ground truth):
private void refreshParameterProperties(){
  if (selectedParameter == null) {
    clearParamProperties();
    setControlEnabled(false);
    initDefaultValueViewer();
    return;
  }
  setControlEnabled(true);
  paramNameEditor.setText(selectedParameter.getName());
  if (selectedParameter.getPromptText() == null) {
    promptText.setText("String_Node_Str");
  }
 else {
    promptText.setText(selectedParameter.getPromptText());
  }
  dataTypeChooser.setText(DATA_TYPE_CHOICE_SET.findChoice(selectedParameter.getDataType()).getDisplayName());
  if (getInputDisplayName() == null) {
    displayTypeChooser.clearSelection();
  }
 else {
    displayTypeChooser.setText(getInputDisplayName());
  }
  Expression expression=getFirstDefaultValue();
  String defaultValue=expression == null ? null : expression.getStringExpression();
  String expressionType=expression == null ? null : expression.getType();
  if (expressionType != null) {
    defaultValueChooser.setData(ExpressionButtonUtil.EXPR_TYPE,expressionType);
    ExpressionButton button=(ExpressionButton)defaultValueChooser.getData(ExpressionButtonUtil.EXPR_BUTTON);
    if (button != null)     button.refresh();
  }
  if (getSelectedDataType().equals(DesignChoiceConstants.PARAM_TYPE_STRING)) {
    defaultValueChooser.setText(DEUtil.resolveNull(defaultValue));
  }
 else   if (defaultValue != null) {
    defaultValueChooser.setText(defaultValue);
  }
 else {
    defaultValueChooser.setText("String_Node_Str");
  }
  helpTextEditor.setText(UIUtil.convertToGUIString(selectedParameter.getHelpText()));
  if (selectedParameter.getPropertyHandle(ScalarParameterHandle.LIST_LIMIT_PROP).isSet()) {
    listLimit.setText(String.valueOf(selectedParameter.getListlimit()));
  }
 else {
    listLimit.setText("String_Node_Str");
  }
  isRequired.setSelection(selectedParameter.isRequired());
  if (selectedParameter == inputParameterGroup.getParameters().get(inputParameterGroup.getParameters().getCount() - 1)) {
    isMultiple.setEnabled(true);
    isMultiple.setSelection(DesignChoiceConstants.SCALAR_PARAM_TYPE_MULTI_VALUE.equals(selectedParameter.getParamType()));
  }
 else {
    isMultiple.setEnabled(false);
    isMultiple.setSelection(false);
  }
  defaultValueList=selectedParameter.getDefaultValueList();
  initDefaultValueViewer();
  changeDataType(selectedParameter.getDataType());
  formatCategroy=selectedParameter.getCategory();
  formatPattern=selectedParameter.getPattern();
  updateFormatField();
}