Program: 42710
Project: 42710
Buggy source:
/** 
 * the main method
 * @param args args
 */
public static void main(String[] args){
  double currentHeading=0;
  final double latErrorFinal=2 / 111131.745;
  final double lonErrorFinal=2 / 78846.81;
  try {
    ArrayList<GpsMeasurement> wayPoints=WayPointUtil.createWayPointsFromLog("String_Node_Str",RobobuggyConfigFile.getWaypointSourceLogFile());
    Gui.getInstance();
    for (int i=0; i < wayPoints.size(); i++) {
      Gui.getInstance().getMainGuiWindow().getAnalyPane().getDataPanel().getGpsPanel().addPointsToMapTree(Color.BLUE,new LocTuple(wayPoints.get(i).getLatitude(),-wayPoints.get(i).getLongitude()));
      Gui.getInstance().fixPaint();
    }
    WayPointFollowerPlanner planer=new WayPointFollowerPlanner(wayPoints);
    for (int i=0; i < wayPoints.size(); i++) {
      for (double latError=-latErrorFinal; latError <= latErrorFinal; latError+=5 * latErrorFinal) {
        for (double lonError=-lonErrorFinal; lonError <= lonErrorFinal; lonError+=5 * lonErrorFinal) {
          double lat=wayPoints.get(i).getLatitude() + latError;
          double lon=wayPoints.get(i).getLongitude() + lonError;
          planer.updatePositionEstimate(new GPSPoseMessage(new Date(),lat,lon,currentHeading));
          double angle=Math.PI * planer.getCommandedSteeringAngle() / 180;
          Gui.getInstance().getMainGuiWindow().getAnalyPane().getDataPanel().getGpsPanel().addPointsToMapTree(Color.RED,new LocTuple(lat,-lon));
          Gui.getInstance().getMainGuiWindow().getAnalyPane().getDataPanel().getGpsPanel().addLineToMap(new LocTuple(lat,-lon),angle,Color.RED);
        }
      }
    }
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
}

Fixed version (ground truth):
/** 
 * the main method
 * @param args args
 */
public static void main(String[] args){
  double currentHeading=0;
  final double latErrorFinal=2 / 111131.745;
  final double lonErrorFinal=2 / 78846.81;
  try {
    ArrayList<GpsMeasurement> wayPoints=WayPointUtil.createWayPointsFromLog("String_Node_Str",RobobuggyConfigFile.getWaypointSourceLogFile());
    Gui.getInstance();
    for (int i=0; i < wayPoints.size(); i++) {
      AnalyticsPanel.getInstance().getDataPanel().getGpsPanel().addPointsToMapTree(Color.BLUE,new LocTuple(wayPoints.get(i).getLatitude(),-wayPoints.get(i).getLongitude()));
      Gui.getInstance().fixPaint();
    }
    WayPointFollowerPlanner planer=new WayPointFollowerPlanner(wayPoints);
    for (int i=0; i < wayPoints.size(); i++) {
      for (double latError=-latErrorFinal; latError <= latErrorFinal; latError+=5 * latErrorFinal) {
        for (double lonError=-lonErrorFinal; lonError <= lonErrorFinal; lonError+=5 * lonErrorFinal) {
          double lat=wayPoints.get(i).getLatitude() + latError;
          double lon=wayPoints.get(i).getLongitude() + lonError;
          planer.updatePositionEstimate(new GPSPoseMessage(new Date(),lat,lon,currentHeading));
          double angle=Math.PI * planer.getCommandedSteeringAngle() / 180;
          AnalyticsPanel.getInstance().getDataPanel().getGpsPanel().addPointsToMapTree(Color.RED,new LocTuple(lat,-lon));
          AnalyticsPanel.getInstance().getDataPanel().getGpsPanel().addLineToMap(new LocTuple(lat,-lon),angle,Color.RED);
        }
      }
    }
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
}