Program: 96718
Project: 96718
Buggy source:
private void processStatement(VCastInstrumentedFile lisFile,VCastLisFileParser lisFileParser,int fileNum,int functionNum,VCastFunction function,VCastStatementCoverage statementCoverageItem,boolean isMCDCFile,Map<String,Discrepancy> discrepancies,OperationReport report){
  Integer functionNumber=function.getFindex();
  Integer lineNumber=statementCoverageItem.getLine();
  Pair<String,Boolean> lineData=null;
  try {
    lineData=lisFileParser.getSourceCodeForLine(functionNumber,lineNumber);
  }
 catch (  Exception ex) {
    report.addEntry("String_Node_Str",String.format("String_Node_Str",lisFile.getLISFile(),function.getName()),ERROR);
  }
  if (fileNum == 41 && functionNum == 1) {
    System.out.println();
  }
  String location;
  if (lineData != null) {
    boolean isMCDCPair=statementCoverageItem.getIsMCDCPair();
    String text;
    if (isMCDCPair) {
      location=String.format("String_Node_Str",lineNumber,statementCoverageItem.getAbbrevCondition(),"String_Node_Str");
      String location2=String.format("String_Node_Str",lineNumber,statementCoverageItem.getAbbrevCondition(),"String_Node_Str");
      if (!lineData.getFirst().matches("String_Node_Str")) {
        text=statementCoverageItem.getFullCondition();
        addDiscrepancy(discrepancies,location,text);
        addDiscrepancy(discrepancies,location2,text);
      }
 else {
        text=lineData.getFirst().trim();
        addDiscrepancy(discrepancies,location,text);
      }
    }
 else {
      location=String.valueOf(lineNumber);
      text=lineData.getFirst().trim();
      addDiscrepancy(discrepancies,location,text);
    }
    if (lineData.getSecond()) {
      String datId=generateDatId(fileNum,functionNum,location);
      datIdsCoveredByException.add(datId);
    }
  }
}

Fixed version (ground truth):
private void processStatement(VCastInstrumentedFile lisFile,VCastLisFileParser lisFileParser,int fileNum,int functionNum,VCastFunction function,VCastStatementCoverage statementCoverageItem,boolean isMCDCFile,Map<String,Discrepancy> discrepancies,OperationReport report){
  Integer functionNumber=function.getFindex();
  Integer lineNumber=statementCoverageItem.getLine();
  Pair<String,Boolean> lineData=null;
  try {
    lineData=lisFileParser.getSourceCodeForLine(functionNumber,lineNumber);
  }
 catch (  Exception ex) {
    report.addEntry("String_Node_Str",String.format("String_Node_Str",lisFile.getLISFile(),function.getName()),ERROR);
  }
  String location;
  if (lineData != null) {
    boolean isMCDCPair=statementCoverageItem.getIsMCDCPair();
    String text;
    if (isMCDCPair) {
      location=String.format("String_Node_Str",lineNumber,statementCoverageItem.getAbbrevCondition(),"String_Node_Str");
      String location2=String.format("String_Node_Str",lineNumber,statementCoverageItem.getAbbrevCondition(),"String_Node_Str");
      if (!lineData.getFirst().matches("String_Node_Str")) {
        text=statementCoverageItem.getFullCondition();
        addDiscrepancy(discrepancies,location,text);
        addDiscrepancy(discrepancies,location2,text);
      }
 else {
        text=lineData.getFirst().trim();
        addDiscrepancy(discrepancies,location,text);
      }
    }
 else {
      location=String.valueOf(lineNumber);
      text=lineData.getFirst().trim();
      addDiscrepancy(discrepancies,location,text);
    }
    if (lineData.getSecond()) {
      String datId=generateDatId(fileNum,functionNum,location);
      datIdsCoveredByException.add(datId);
    }
  }
}