Program: 86339
Project: 86339
Buggy source:
private List<SearchResult> parse_search(String html){
  Document doc=Jsoup.parse(html);
  doc.setBaseUri(opac_url + "String_Node_Str");
  results=doc.select("String_Node_Str").first().text().trim();
  searchobj=doc.select("String_Node_Str").first().attr("String_Node_Str").split("String_Node_Str")[0];
  Elements table=doc.select("String_Node_Str");
  List<SearchResult> results=new ArrayList<SearchResult>();
  for (int i=0; i < table.size(); i++) {
    Element tr=table.get(i);
    SearchResult sr=new SearchResult();
    sr.setType(tr.select("String_Node_Str").text().replace("String_Node_Str","String_Node_Str").trim());
    String desc="String_Node_Str";
    Elements children=tr.select("String_Node_Str");
    int childrennum=children.size();
    boolean haslink=false;
    for (int ch=0; ch < childrennum; ch++) {
      Element node=children.get(ch);
      if (node.select("String_Node_Str").text().equals("String_Node_Str")) {
        desc+="String_Node_Str" + node.select("String_Node_Str").text().trim() + "String_Node_Str";
      }
 else       if (node.select("String_Node_Str").text().equals("String_Node_Str") || node.select("String_Node_Str").text().equals("String_Node_Str")) {
        desc+=node.select("String_Node_Str").text().trim() + "String_Node_Str";
      }
      if (node.select("String_Node_Str").size() > 0 && haslink == false) {
        sr.setId(Uri.parse(node.select("String_Node_Str").attr("String_Node_Str")).getQueryParameter("String_Node_Str"));
        haslink=true;
      }
    }
    if (desc.endsWith("String_Node_Str"))     desc=desc.substring(0,desc.length() - 6);
    sr.setInnerhtml(desc);
    sr.setNr(i);
    results.add(sr);
  }
  return results;
}

Fixed version (ground truth):
private List<SearchResult> parse_search(String html){
  Document doc=Jsoup.parse(html);
  doc.setBaseUri(opac_url + "String_Node_Str");
  results=doc.select("String_Node_Str").first().text().trim();
  if (doc.select("String_Node_Str").size() > 0) {
    searchobj=doc.select("String_Node_Str").first().attr("String_Node_Str").split("String_Node_Str")[0];
  }
  Elements table=doc.select("String_Node_Str");
  List<SearchResult> results=new ArrayList<SearchResult>();
  for (int i=0; i < table.size(); i++) {
    Element tr=table.get(i);
    SearchResult sr=new SearchResult();
    sr.setType(tr.select("String_Node_Str").text().replace("String_Node_Str","String_Node_Str").trim());
    String desc="String_Node_Str";
    Elements children=tr.select("String_Node_Str");
    int childrennum=children.size();
    boolean haslink=false;
    for (int ch=0; ch < childrennum; ch++) {
      Element node=children.get(ch);
      if (node.select("String_Node_Str").text().equals("String_Node_Str")) {
        desc+="String_Node_Str" + node.select("String_Node_Str").text().trim() + "String_Node_Str";
      }
 else       if (node.select("String_Node_Str").text().equals("String_Node_Str") || node.select("String_Node_Str").text().equals("String_Node_Str")) {
        desc+=node.select("String_Node_Str").text().trim() + "String_Node_Str";
      }
      if (node.select("String_Node_Str").size() > 0 && haslink == false) {
        sr.setId(Uri.parse(node.select("String_Node_Str").attr("String_Node_Str")).getQueryParameter("String_Node_Str"));
        haslink=true;
      }
    }
    if (desc.endsWith("String_Node_Str"))     desc=desc.substring(0,desc.length() - 6);
    sr.setInnerhtml(desc);
    sr.setNr(i);
    results.add(sr);
  }
  return results;
}