Program: 50457
Project: 50457
Buggy source:
/** 
 * Configure.
 * @param args command line arguments
 * @return this object for chaining
 * @throws java.io.IOException error parsing
 * @throws com.martiansoftware.jsap.JSAPException error parsing
 */
@Override public AbstractCommandLineMode configure(final String[] args) throws IOException, JSAPException {
  final JSAPResult jsapResult=parseJsapArguments(args);
  inputFilenames=jsapResult.getStringArray("String_Node_Str");
  outputFile=jsapResult.getString("String_Node_Str");
  outWriter="String_Node_Str".equals(outputFile) ? new PrintWriter(System.out) : new PrintWriter(outputFile);
  final String groupsDefinition=jsapResult.getString("String_Node_Str");
  deAnalyzer.parseGroupsDefinition(groupsDefinition,deCalculator,inputFilenames);
  final String compare=jsapResult.getString("String_Node_Str");
  deAnalyzer.parseCompare(compare);
  Map<String,String> sampleToGroupMap=deCalculator.getSampleToGroupMap();
  readerIndexToGroupIndex=new int[inputFilenames.length];
  IndexedIdentifier groupIds=new IndexedIdentifier();
  for (  String group : sampleToGroupMap.values()) {
    groupIds.registerIdentifier(new MutableString(group));
  }
  minimumVariationSupport=jsapResult.getInt("String_Node_Str");
  thresholdDistinctReadIndices=jsapResult.getInt("String_Node_Str");
  CompactAlignmentToAnnotationCountsMode.parseEval(jsapResult,deAnalyzer);
  numberOfGroups=deAnalyzer.getGroups().length;
  groups=deAnalyzer.getGroups();
  variationPool=new SequenceVariationPool(numberOfGroups);
  for (  String sample : sampleToGroupMap.keySet()) {
    final String group=sampleToGroupMap.get(sample);
    System.out.printf("String_Node_Str",sample,group);
    for (int readerIndex=0; readerIndex < inputFilenames.length; readerIndex++) {
      if (AlignmentReader.getBasename(inputFilenames[readerIndex]).endsWith(sample)) {
        readerIndexToGroupIndex[readerIndex]=groupIds.get(new MutableString(group));
      }
    }
  }
  File statFile=jsapResult.getFile("String_Node_Str");
  if (statFile != null) {
    loadStatFile(statFile);
  }
 else {
    if (deAnalyzer.eval("String_Node_Str")) {
      System.err.println("String_Node_Str");
      System.exit(1);
    }
  }
  refCount=new int[numberOfGroups];
  variantsCount=new int[numberOfGroups];
  distinctReadIndexCount=new int[numberOfGroups];
  if (deAnalyzer.eval("String_Node_Str") || deAnalyzer.eval("String_Node_Str")) {
    final Rengine rEngine=GobyRengine.getInstance().getRengine();
    fisherRInstalled=rEngine != null && rEngine.isAlive();
  }
  return this;
}

Fixed version (ground truth):
/** 
 * Configure.
 * @param args command line arguments
 * @return this object for chaining
 * @throws java.io.IOException error parsing
 * @throws com.martiansoftware.jsap.JSAPException error parsing
 */
@Override public AbstractCommandLineMode configure(final String[] args) throws IOException, JSAPException {
  final JSAPResult jsapResult=parseJsapArguments(args);
  inputFilenames=jsapResult.getStringArray("String_Node_Str");
  outputFile=jsapResult.getString("String_Node_Str");
  outWriter="String_Node_Str".equals(outputFile) ? new PrintWriter(System.out) : new PrintWriter(outputFile);
  final String groupsDefinition=jsapResult.getString("String_Node_Str");
  deAnalyzer.parseGroupsDefinition(groupsDefinition,deCalculator,inputFilenames);
  final String compare=jsapResult.getString("String_Node_Str");
  deAnalyzer.parseCompare(compare);
  Map<String,String> sampleToGroupMap=deCalculator.getSampleToGroupMap();
  readerIndexToGroupIndex=new int[inputFilenames.length];
  IndexedIdentifier groupIds=new IndexedIdentifier();
  for (  String group : sampleToGroupMap.values()) {
    groupIds.registerIdentifier(new MutableString(group));
  }
  minimumVariationSupport=jsapResult.getInt("String_Node_Str");
  thresholdDistinctReadIndices=jsapResult.getInt("String_Node_Str");
  CompactAlignmentToAnnotationCountsMode.parseEval(jsapResult,deAnalyzer);
  numberOfGroups=deAnalyzer.getGroups().length;
  groups=deAnalyzer.getGroups();
  variationPool=new SequenceVariationPool(numberOfGroups);
  for (  String sample : sampleToGroupMap.keySet()) {
    final String group=sampleToGroupMap.get(sample);
    System.out.printf("String_Node_Str",sample,group);
    for (int readerIndex=0; readerIndex < inputFilenames.length; readerIndex++) {
      if (AlignmentReader.getBasename(inputFilenames[readerIndex]).endsWith(sample)) {
        readerIndexToGroupIndex[readerIndex]=groupIds.get(new MutableString(group));
      }
    }
  }
  File statFile=jsapResult.getFile("String_Node_Str");
  if (statFile != null) {
    loadStatFile(statFile);
  }
 else {
    if (deAnalyzer.eval("String_Node_Str")) {
      System.err.println("String_Node_Str");
      System.exit(1);
    }
  }
  refCount=new int[numberOfGroups];
  variantsCount=new int[numberOfGroups];
  distinctReadIndexCount=new int[numberOfGroups];
  if (deAnalyzer.eval("String_Node_Str") || deAnalyzer.eval("String_Node_Str")) {
    final Rengine rEngine=GobyRengine.getInstance().getRengine();
    fisherRInstalled=rEngine != null && rEngine.isAlive();
  }
  if (deAnalyzer.eval("String_Node_Str") && groups.length != 2) {
    System.err.println("String_Node_Str");
    System.exit(1);
  }
  return this;
}