Program: 153134
Project: 153134
Buggy source:
/** 
 * Method to get a LinkedList of biometrics in a range of dates
 * @param (String from) - start of date range
 * @param (String to) - end of date range
 * @return - list of biometrics within the range
 */
public LinkedList<Biometric> getBIOsFromTo(String from,String to){
  LinkedList<Biometric> resultList=new LinkedList<Biometric>();
  int start, i=0;
  int end=0;
  for (i=0; i < wods.size(); i++) {
    if (biometrics.get(i).getYear() == Integer.parseInt(from.substring(4,8))) {
      if (biometrics.get(i).getMonth() > Integer.parseInt(from.substring(2,4))) {
        break;
      }
 else       if (biometrics.get(i).getMonth() == Integer.parseInt(from.substring(2,4))) {
        if (biometrics.get(i).getDay() >= Integer.parseInt(from.substring(0,2))) {
          break;
        }
      }
    }
    if (biometrics.get(i).getYear() > Integer.parseInt(from.substring(4,8))) {
      break;
    }
  }
  start=i;
  for (i=0; i < biometrics.size(); i++) {
    if (biometrics.get(i).getYear() == Integer.parseInt(to.substring(4,8))) {
      if (biometrics.get(i).getMonth() > Integer.parseInt(to.substring(2,4))) {
        break;
      }
 else       if (biometrics.get(i).getMonth() == Integer.parseInt(to.substring(2,4))) {
        if (biometrics.get(i).getDay() >= Integer.parseInt(to.substring(0,2))) {
          break;
        }
      }
    }
    if (biometrics.get(i).getYear() > Integer.parseInt(to.substring(4,8))) {
      break;
    }
  }
  end=i;
  for (i=0; start <= end; start++) {
    resultList.add(biometrics.get(start));
  }
  Biometric checkFirst=resultList.get(0);
  if (checkFirst.getYear() < Integer.parseInt(from.substring(4,8))) {
    resultList.clear();
  }
 else   if (checkFirst.getYear() == Integer.parseInt(from.substring(4,8))) {
    if (checkFirst.getMonth() < Integer.parseInt(from.substring(0,2))) {
      resultList.clear();
    }
 else     if (checkFirst.getYear() == Integer.parseInt(from.substring(0,2))) {
      if (checkFirst.getDay() < Integer.parseInt(from.substring(2,4))) {
        resultList.clear();
      }
    }
  }
  return resultList;
}

Fixed version (ground truth):
/** 
 * Method to get a LinkedList of biometrics in a range of dates
 * @param (String from) - start of date range
 * @param (String to) - end of date range
 * @return - list of biometrics within the range
 */
public LinkedList<Biometric> getBIOsFromTo(String from,String to){
  LinkedList<Biometric> resultList=new LinkedList<Biometric>();
  int start, i=0;
  int end=0;
  for (i=0; i < wods.size(); i++) {
    if (biometrics.get(i).getYear() == Integer.parseInt(from.substring(4,8))) {
      if (biometrics.get(i).getMonth() > Integer.parseInt(from.substring(2,4))) {
        break;
      }
 else       if (biometrics.get(i).getMonth() == Integer.parseInt(from.substring(2,4))) {
        if (biometrics.get(i).getDay() >= Integer.parseInt(from.substring(0,2))) {
          break;
        }
      }
    }
    if (biometrics.get(i).getYear() > Integer.parseInt(from.substring(4,8))) {
      break;
    }
  }
  start=i;
  for (i=0; i < biometrics.size(); i++) {
    if (biometrics.get(i).getYear() == Integer.parseInt(to.substring(4,8))) {
      if (biometrics.get(i).getMonth() > Integer.parseInt(to.substring(2,4))) {
        break;
      }
 else       if (biometrics.get(i).getMonth() == Integer.parseInt(to.substring(2,4))) {
        if (biometrics.get(i).getDay() >= Integer.parseInt(to.substring(0,2))) {
          break;
        }
      }
    }
    if (biometrics.get(i).getYear() > Integer.parseInt(to.substring(4,8))) {
      break;
    }
  }
  end=i;
  for (i=0; start <= end; start++) {
    resultList.add(biometrics.get(start));
  }
  Biometric checkFirst=resultList.get(0);
  if (checkFirst.getYear() < Integer.parseInt(from.substring(4,8))) {
    resultList.clear();
  }
 else   if (checkFirst.getYear() == Integer.parseInt(from.substring(4,8))) {
    if (checkFirst.getMonth() < Integer.parseInt(from.substring(0,2))) {
      resultList.clear();
    }
 else     if (checkFirst.getMonth() == Integer.parseInt(from.substring(0,2))) {
      if (checkFirst.getDay() < Integer.parseInt(from.substring(2,4))) {
        resultList.clear();
      }
    }
  }
  return resultList;
}