Program: 150908
Project: 150908
Buggy source:
public void execute(String[] args,BaseFiducialSquareEPS app) throws IOException {
  try {
    parseArguments(args);
  }
 catch (  IllegalArgumentException e) {
    printHelp();
    System.out.println();
    System.out.println(e.getMessage());
    System.exit(-1);
  }
  System.out.println("String_Node_Str");
  System.out.println("String_Node_Str" + outputName);
  System.out.println("String_Node_Str" + units);
  System.out.println("String_Node_Str" + fiducialWidth);
  if (whiteBorder > -1)   System.out.println("String_Node_Str" + whiteBorder);
  System.out.println("String_Node_Str" + printInfo);
  System.out.println("String_Node_Str" + printGrid);
  System.out.println("String_Node_Str" + (!noBoundaryHack));
  if (isBinary)   System.out.println("String_Node_Str" + binaryGridSize + "String_Node_Str"+ binaryGridSize);
  if (paper != null)   System.out.println("String_Node_Str" + paper);
  if (gridX < 0)   System.out.println("String_Node_Str");
 else   if (gridX > 1 && gridY > 1)   System.out.printf("String_Node_Str",gridY,gridX);
  if (autoCenter)   System.out.println("String_Node_Str");
 else   System.out.printf("String_Node_Str",offsetX,offsetY);
  if (!Double.isNaN(borderX))   System.out.printf("String_Node_Str",borderX,borderY);
  System.out.println();
  System.out.println("String_Node_Str");
  for (  String p : patternNames) {
    System.out.println("String_Node_Str" + p);
  }
  System.out.println("String_Node_Str");
  for (  String path : patternNames) {
    app.addPattern(path);
  }
  if (app instanceof CreateFiducialSquareBinaryEPS) {
switch (binaryGridSize) {
case 3:
      ((CreateFiducialSquareBinaryEPS)app).setGridSize(BinaryFiducialGridSize.THREE_BY_THREE);
    break;
case 5:
  ((CreateFiducialSquareBinaryEPS)app).setGridSize(BinaryFiducialGridSize.FIVE_BY_FIVE);
break;
default :
System.out.println("String_Node_Str");
case 4:
((CreateFiducialSquareBinaryEPS)app).setGridSize(BinaryFiducialGridSize.FOUR_BY_FOUR);
break;
}
}
app.setOutputFileName(outputName);
app.setPrintInfo(printInfo);
app.setPrintGrid(printGrid);
app.setBoundaryHack(!noBoundaryHack);
app.setUnit(units);
if (!autoCenter) {
app.setCentering(false);
app.setOffset(offsetX,offsetY,units);
}
if (!Double.isNaN(borderX)) {
app.setPageBorder(borderX,borderY,units);
}
 else {
app.setPageBorder(0,0,units);
}
app.generateGrid(fiducialWidth,whiteBorder,gridX,gridY,paper);
System.out.println("String_Node_Str");
}

Fixed version (ground truth):
public void execute(String[] args,BaseFiducialSquareEPS app) throws IOException {
  try {
    parseArguments(args);
  }
 catch (  IllegalArgumentException e) {
    printHelp();
    System.out.println();
    System.out.println(e.getMessage());
    System.exit(-1);
  }
  System.out.println("String_Node_Str");
  System.out.println("String_Node_Str" + outputName);
  System.out.println("String_Node_Str" + units);
  System.out.println("String_Node_Str" + fiducialWidth);
  if (whiteBorder > -1)   System.out.println("String_Node_Str" + whiteBorder);
  System.out.println("String_Node_Str" + printInfo);
  System.out.println("String_Node_Str" + printGrid);
  System.out.println("String_Node_Str" + (!noBoundaryHack));
  if (isBinary)   System.out.println("String_Node_Str" + binaryGridSize + "String_Node_Str"+ binaryGridSize);
  if (paper != null)   System.out.println("String_Node_Str" + paper);
  if (gridX < 0)   System.out.println("String_Node_Str");
 else   if (gridX > 1 && gridY > 1)   System.out.printf("String_Node_Str",gridY,gridX);
  if (autoCenter)   System.out.println("String_Node_Str");
 else   System.out.printf("String_Node_Str",offsetX,offsetY);
  if (!Double.isNaN(borderX))   System.out.printf("String_Node_Str",borderX,borderY);
  System.out.println();
  System.out.println("String_Node_Str");
  for (  String p : patternNames) {
    System.out.println("String_Node_Str" + p);
  }
  System.out.println("String_Node_Str");
  if (app instanceof CreateFiducialSquareBinaryEPS) {
switch (binaryGridSize) {
case 3:
      ((CreateFiducialSquareBinaryEPS)app).setGridSize(BinaryFiducialGridSize.THREE_BY_THREE);
    break;
case 5:
  ((CreateFiducialSquareBinaryEPS)app).setGridSize(BinaryFiducialGridSize.FIVE_BY_FIVE);
break;
default :
System.out.println("String_Node_Str");
case 4:
((CreateFiducialSquareBinaryEPS)app).setGridSize(BinaryFiducialGridSize.FOUR_BY_FOUR);
break;
}
}
for (String path : patternNames) {
app.addPattern(path);
}
app.setOutputFileName(outputName);
app.setPrintInfo(printInfo);
app.setPrintGrid(printGrid);
app.setBoundaryHack(!noBoundaryHack);
app.setUnit(units);
if (!autoCenter) {
app.setCentering(false);
app.setOffset(offsetX,offsetY,units);
}
if (!Double.isNaN(borderX)) {
app.setPageBorder(borderX,borderY,units);
}
 else {
app.setPageBorder(0,0,units);
}
app.generateGrid(fiducialWidth,whiteBorder,gridX,gridY,paper);
System.out.println("String_Node_Str");
}