Program: 169250
Project: 169250
Buggy source:
@SuppressWarnings("String_Node_Str") private Overlap getOverlapInfo(String line){
  Overlap overlap=new Overlap();
  String[] splitLine=line.trim().split("String_Node_Str");
  try {
    if (splitLine.length == 7 || splitLine.length == 6) {
      overlap.id1=splitLine[0];
      overlap.id2=splitLine[1];
      double score=Double.parseDouble(splitLine[5]) * 5;
      int aoffset=Integer.parseInt(splitLine[3]);
      int boffset=Integer.parseInt(splitLine[4]);
      boolean isFwd=("String_Node_Str".equals(splitLine[2]));
      if (this.dataSeq != null) {
        int alen=this.dataSeq[Integer.parseInt(overlap.id1) - 1].length();
        int blen=this.dataSeq[Integer.parseInt(overlap.id2) - 1].length();
        overlap.afirst=Math.max(0,aoffset);
        overlap.asecond=Math.min(alen,alen + boffset);
        overlap.bfirst=-1 * Math.min(0,aoffset);
        overlap.bsecond=Math.min(blen,blen - boffset);
      }
    }
 else     if (splitLine.length == 13) {
      overlap.afirst=Integer.parseInt(splitLine[5]);
      overlap.asecond=Integer.parseInt(splitLine[6]);
      overlap.bfirst=Integer.parseInt(splitLine[9]);
      overlap.bsecond=Integer.parseInt(splitLine[10]);
      overlap.isFwd=(Integer.parseInt(splitLine[8]) == 0);
      if (!overlap.isFwd) {
        overlap.bsecond=Integer.parseInt(splitLine[11]) - Integer.parseInt(splitLine[9]);
        overlap.bfirst=Integer.parseInt(splitLine[11]) - Integer.parseInt(splitLine[10]);
      }
      overlap.id1=splitLine[0];
      if (overlap.id1.indexOf("String_Node_Str") != -1) {
        overlap.id1=overlap.id1.substring(0,splitLine[0].indexOf("String_Node_Str"));
      }
      if (overlap.id1.indexOf("String_Node_Str") != -1) {
        overlap.id1=overlap.id1.split("String_Node_Str")[1];
      }
      overlap.id2=splitLine[1];
      if (overlap.id2.indexOf("String_Node_Str") != -1) {
        overlap.id2=overlap.id2.split("String_Node_Str")[1];
      }
    }
  }
 catch (  NumberFormatException e) {
    System.err.println("String_Node_Str" + line + "String_Node_Str"+ e.getMessage());
  }
  return overlap;
}

Fixed version (ground truth):
private Overlap getOverlapInfo(String line){
  Overlap overlap=new Overlap();
  String[] splitLine=line.trim().split("String_Node_Str");
  try {
    if (splitLine.length == 7 || splitLine.length == 6) {
      overlap.id1=splitLine[0];
      overlap.id2=splitLine[1];
      @SuppressWarnings("String_Node_Str") double score=Double.parseDouble(splitLine[5]) * 5;
      int aoffset=Integer.parseInt(splitLine[3]);
      int boffset=Integer.parseInt(splitLine[4]);
      overlap.isFwd="String_Node_Str".equalsIgnoreCase(splitLine[2]);
      if (this.dataSeq != null) {
        int alen=this.dataSeq[Integer.parseInt(overlap.id1) - 1].length();
        int blen=this.dataSeq[Integer.parseInt(overlap.id2) - 1].length();
        overlap.afirst=Math.max(0,aoffset);
        overlap.asecond=Math.min(alen,alen + boffset);
        overlap.bfirst=-1 * Math.min(0,aoffset);
        overlap.bsecond=Math.min(blen,blen - boffset);
      }
    }
 else     if (splitLine.length == 13) {
      overlap.afirst=Integer.parseInt(splitLine[5]);
      overlap.asecond=Integer.parseInt(splitLine[6]);
      overlap.bfirst=Integer.parseInt(splitLine[9]);
      overlap.bsecond=Integer.parseInt(splitLine[10]);
      overlap.isFwd=(Integer.parseInt(splitLine[8]) == 0);
      if (!overlap.isFwd) {
        overlap.bsecond=Integer.parseInt(splitLine[11]) - Integer.parseInt(splitLine[9]);
        overlap.bfirst=Integer.parseInt(splitLine[11]) - Integer.parseInt(splitLine[10]);
      }
      overlap.id1=splitLine[0];
      if (overlap.id1.indexOf("String_Node_Str") != -1) {
        overlap.id1=overlap.id1.substring(0,splitLine[0].indexOf("String_Node_Str"));
      }
      if (overlap.id1.indexOf("String_Node_Str") != -1) {
        overlap.id1=overlap.id1.split("String_Node_Str")[1];
      }
      overlap.id2=splitLine[1];
      if (overlap.id2.indexOf("String_Node_Str") != -1) {
        overlap.id2=overlap.id2.split("String_Node_Str")[1];
      }
    }
  }
 catch (  NumberFormatException e) {
    System.err.println("String_Node_Str" + line + "String_Node_Str"+ e.getMessage());
  }
  return overlap;
}