Program: 72381
Project: 72381
Buggy source:
/** 
 * Find some property line in a file.
 * @param file The file that is going to be searched.
 * @param propertyLine The line that is going be be found.
 * @return An array with 3 strings in the respective order: the data before the propertyLine,the propertyLine with the indentation it possesses in the file, and the data after it. it
 */
private static String[] _findPropertyLine(ArrayList<String> file,String propertyLine){
  boolean lineFound=false;
  String dataBefore="String_Node_Str";
  String dataAfter="String_Node_Str";
  String line="String_Node_Str";
  for (  String content : file) {
    if (!content.isEmpty() || !(content.equals("String_Node_Str")) || !(content.equals("String_Node_Str"))) {
      if (content.contains(propertyLine) && !lineFound) {
        line=content.substring(0,content.length() - 2);
        line=line.substring(line.lastIndexOf("String_Node_Str") + 1);
        try {
          Double.valueOf(line);
          line=content.substring(0,content.indexOf(line));
          lineFound=true;
          System.out.println(true);
        }
 catch (        Exception e) {
          if (dataBefore.isEmpty()) {
            dataBefore=content;
          }
 else {
            dataBefore=dataBefore + "String_Node_Str" + content;
          }
        }
      }
 else       if (!lineFound) {
        if (dataBefore.isEmpty()) {
          dataBefore=content;
        }
 else {
          dataBefore=dataBefore + "String_Node_Str" + content;
        }
      }
 else {
        if (dataAfter.isEmpty()) {
          dataAfter=content;
        }
 else {
          dataAfter=dataAfter + "String_Node_Str" + content;
        }
      }
    }
  }
  String[] data={dataBefore,line,dataAfter};
  if (line.equals("String_Node_Str")) {
    System.out.println("String_Node_Str");
    System.exit(0);
    return null;
  }
  return data;
}

Fixed version (ground truth):
/** 
 * Find some property line in a file.
 * @param file The file that is going to be searched.
 * @param propertyLine The line that is going be be found.
 * @return An array with 3 strings in the respective order: the data before the propertyLine,the propertyLine with the indentation it possesses in the file, and the data after it. it
 */
private static String[] _findPropertyLine(ArrayList<String> file,String propertyLine){
  boolean lineFound=false;
  String dataBefore="String_Node_Str";
  String dataAfter="String_Node_Str";
  String line="String_Node_Str";
  for (  String content : file) {
    if (!content.isEmpty() || !(content.equals("String_Node_Str")) || !(content.equals("String_Node_Str"))) {
      if (content.contains(propertyLine) && !lineFound) {
        line=content.substring(0,content.length() - 2);
        line=line.substring(line.lastIndexOf("String_Node_Str") + 1);
        try {
          line=content.substring(0,content.indexOf(line));
          lineFound=true;
          System.out.println(true);
        }
 catch (        Exception e) {
          if (dataBefore.isEmpty()) {
            dataBefore=content;
          }
 else {
            dataBefore=dataBefore + "String_Node_Str" + content;
          }
        }
      }
 else       if (!lineFound) {
        if (dataBefore.isEmpty()) {
          dataBefore=content;
        }
 else {
          dataBefore=dataBefore + "String_Node_Str" + content;
        }
      }
 else {
        if (dataAfter.isEmpty()) {
          dataAfter=content;
        }
 else {
          dataAfter=dataAfter + "String_Node_Str" + content;
        }
      }
    }
  }
  String[] data={dataBefore,line,dataAfter};
  if (line.equals("String_Node_Str")) {
    System.out.println("String_Node_Str");
    System.exit(0);
    return null;
  }
  return data;
}