Program: 75004
Project: 75004
Buggy source:
/** 
 * Construct a dialog with the specified owner and target. A "Commit" and a "Cancel" button are added to the dialog. The dialog is placed relative to the owner.
 * @param owner The object that, per the user, appears to begenerating the dialog.
 * @param target The object whose parameters are being edited.
 */
public EditParametersDialog(Frame owner,NamedObj target){
  super(owner,"String_Node_Str" + target.getName(),new Configurer(target),_moreButtons);
  _owner=owner;
  _target=target;
  if (buttonPressed().equals("String_Node_Str")) {
    _openAddDialog(null,"String_Node_Str","String_Node_Str","String_Node_Str");
    _target.removeChangeListener(this);
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    List attributeList=_target.attributeList(Settable.class);
    Iterator parameters=attributeList.iterator();
    int count=0;
    while (parameters.hasNext()) {
      Settable parameter=(Settable)parameters.next();
      if (Configurer.isVisible(target,parameter)) {
        count++;
      }
    }
    String[] attributeNames=new String[count];
    parameters=attributeList.iterator();
    int index=0;
    while (parameters.hasNext()) {
      Settable parameter=(Settable)parameters.next();
      if (Configurer.isVisible(target,parameter)) {
        attributeNames[index++]=((Attribute)parameter).getName();
      }
    }
    Query query=new Query();
    query.addChoice("String_Node_Str","String_Node_Str",attributeNames,null,false);
    ComponentDialog dialog=new ComponentDialog(_owner,"String_Node_Str" + _target.getFullName(),query,null);
    String deleteName=query.getStringValue("String_Node_Str");
    if (dialog.buttonPressed().equals("String_Node_Str") && !deleteName.equals("String_Node_Str")) {
      String moml="String_Node_Str" + deleteName + "String_Node_Str";
      _target.addChangeListener(this);
      MoMLChangeRequest request=new MoMLChangeRequest(this,_target,moml);
      request.setUndoable(true);
      _target.requestChange(request);
    }
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    ((Configurer)contents).restoreToDefaults();
    _reOpen();
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    try {
      StyleConfigurer panel=new StyleConfigurer(target);
      ComponentDialog dialog=new ComponentDialog(_owner,"String_Node_Str" + target.getName(),panel);
      if (!(dialog.buttonPressed().equals("String_Node_Str"))) {
        panel.restore();
      }
      _reOpen();
    }
 catch (    IllegalActionException ex) {
      MessageHandler.error("String_Node_Str",ex);
    }
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    try {
      URL doc=getClass().getClassLoader().getResource("String_Node_Str");
      boolean success=false;
      if (_owner instanceof TableauFrame) {
        Configuration configuration=((TableauFrame)_owner).getConfiguration();
        if (configuration != null) {
          configuration.openModel(null,doc,doc.toExternalForm());
          success=true;
        }
      }
      if (!success) {
        HTMLViewer viewer=new HTMLViewer();
        viewer.setPage(doc);
        viewer.pack();
        viewer.show();
      }
    }
 catch (    Exception ex) {
      try {
        MessageHandler.warning("String_Node_Str",ex);
      }
 catch (      CancelException exception) {
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * Construct a dialog with the specified owner and target. A "Commit" and a "Cancel" button are added to the dialog. The dialog is placed relative to the owner.
 * @param owner The object that, per the user, appears to begenerating the dialog.
 * @param target The object whose parameters are being edited.
 * @param label The label for the dialog box.
 */
public EditParametersDialog(Frame owner,NamedObj target,String label){
  super(owner,label,new Configurer(target),_moreButtons);
  _owner=owner;
  _target=target;
  if (buttonPressed().equals("String_Node_Str")) {
    _openAddDialog(null,"String_Node_Str","String_Node_Str","String_Node_Str");
    _target.removeChangeListener(this);
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    List attributeList=_target.attributeList(Settable.class);
    Iterator parameters=attributeList.iterator();
    int count=0;
    while (parameters.hasNext()) {
      Settable parameter=(Settable)parameters.next();
      if (Configurer.isVisible(target,parameter)) {
        count++;
      }
    }
    String[] attributeNames=new String[count];
    parameters=attributeList.iterator();
    int index=0;
    while (parameters.hasNext()) {
      Settable parameter=(Settable)parameters.next();
      if (Configurer.isVisible(target,parameter)) {
        attributeNames[index++]=((Attribute)parameter).getName();
      }
    }
    Query query=new Query();
    query.addChoice("String_Node_Str","String_Node_Str",attributeNames,null,false);
    ComponentDialog dialog=new ComponentDialog(_owner,"String_Node_Str" + _target.getFullName(),query,null);
    String deleteName=query.getStringValue("String_Node_Str");
    if (dialog.buttonPressed().equals("String_Node_Str") && !deleteName.equals("String_Node_Str")) {
      String moml="String_Node_Str" + deleteName + "String_Node_Str";
      _target.addChangeListener(this);
      MoMLChangeRequest request=new MoMLChangeRequest(this,_target,moml);
      request.setUndoable(true);
      _target.requestChange(request);
    }
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    ((Configurer)contents).restoreToDefaults();
    new EditParametersDialog(_owner,_target);
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    try {
      StyleConfigurer panel=new StyleConfigurer(target);
      ComponentDialog dialog=new ComponentDialog(_owner,"String_Node_Str" + target.getName(),panel);
      if (!(dialog.buttonPressed().equals("String_Node_Str"))) {
        panel.restore();
      }
      new EditParametersDialog(_owner,_target);
    }
 catch (    IllegalActionException ex) {
      MessageHandler.error("String_Node_Str",ex);
    }
  }
 else   if (buttonPressed().equals("String_Node_Str")) {
    try {
      URL doc=getClass().getClassLoader().getResource("String_Node_Str");
      boolean success=false;
      if (_owner instanceof TableauFrame) {
        Configuration configuration=((TableauFrame)_owner).getConfiguration();
        if (configuration != null) {
          configuration.openModel(null,doc,doc.toExternalForm());
          success=true;
        }
      }
      if (!success) {
        HTMLViewer viewer=new HTMLViewer();
        viewer.setPage(doc);
        viewer.pack();
        viewer.show();
      }
    }
 catch (    Exception ex) {
      try {
        MessageHandler.warning("String_Node_Str",ex);
      }
 catch (      CancelException exception) {
      }
    }
  }
}