Program: 74233
Project: 74233
Buggy source:
public void configure(URL base,String source,String text) throws Exception {
  Parameter immediate=(Parameter)getAttribute("String_Node_Str");
  boolean isImmediate=immediate != null && ((BooleanToken)immediate.getToken()).booleanValue();
  if (isImmediate) {
    Effigy masterEffigy=Configuration.findEffigy(toplevel());
    PtolemyEffigy effigy=new PtolemyEffigy(masterEffigy,masterEffigy.uniqueName("String_Node_Str"));
    MoMLParser parser=new MoMLParser(workspace());
    final ERGModalModel transformer=(ERGModalModel)parser.parse(base,source,new StringReader(text));
    final Manager manager=new Manager(transformer.workspace(),"String_Node_Str");
    final CompositeEntity context=(CompositeEntity)getContainer();
    effigy.setModel(transformer);
    transformer.setManager(manager);
    manager.addExecutionListener(new ExecutionListener(){
      public void executionError(      Manager manager,      Throwable throwable){
      }
      public void executionFinished(      Manager manager){
      }
      public void managerStateChanged(      Manager manager){
        if (manager.getState() == Manager.INITIALIZING) {
          ModelParameter modelAttribute=(ModelParameter)transformer.getController().getAttribute("String_Node_Str");
          modelAttribute.setModel(context);
        }
      }
    }
);
    List<ParserAttribute> parsers=context.attributeList(ParserAttribute.class);
    ParserAttribute parserAttribute=parsers.size() > 0 ? parsers.get(0) : new ParserAttribute(context,context.uniqueName("String_Node_Str"));
    MoMLParser oldParser=parsers.size() > 0 ? parserAttribute.getParser() : null;
    parserAttribute.setParser(new MoMLParser());
    try {
      manager.execute();
    }
  finally {
      if (oldParser == null) {
        parserAttribute.setContainer(null);
      }
 else {
        parserAttribute.setParser(oldParser);
      }
    }
    setContainer(null);
  }
 else {
    _configureSource=source;
    text=text.trim();
    if (!text.equals("String_Node_Str")) {
      MoMLParser parser=new MoMLParser(workspace());
      _configurer.removeAllEntities();
      parser.setContext(_configurer);
      parser.parse(base,source,new StringReader(text));
      _modelUpdater=(ERGModalModel)_configurer.entityList().get(0);
      _clearURI(_modelUpdater);
    }
  }
}

Fixed version (ground truth):
public void configure(final URL base,final String source,final String text) throws Exception {
  StringParameter typeParameter=(StringParameter)getAttribute("String_Node_Str");
  String type=typeParameter == null ? "String_Node_Str" : typeParameter.getExpression();
  if (type.equals("String_Node_Str") || type.equals("String_Node_Str")) {
    if (type.equals("String_Node_Str")) {
      getContainer().requestChange(new ChangeRequest(this,"String_Node_Str"){
        protected void _execute() throws Exception {
          try {
            _executeTransformation(base,source,text);
          }
  finally {
            setContainer(null);
          }
        }
      }
);
    }
 else     if (type.equals("String_Node_Str")) {
      try {
        _executeTransformation(base,source,text);
      }
  finally {
        setContainer(null);
      }
    }
  }
 else {
    _configureSource=source;
    if (!text.trim().equals("String_Node_Str")) {
      MoMLParser parser=new MoMLParser(workspace());
      _configurer.removeAllEntities();
      parser.setContext(_configurer);
      parser.parse(base,source,new StringReader(text));
      _modelUpdater=(ERGModalModel)_configurer.entityList().get(0);
      _clearURI(_modelUpdater);
    }
  }
}