Program: 43095
Project: 43095
Buggy source:
/** 
 * Checks if any updates are available for HawkEye Outputs console warning if updates are needed
 */
private void versionCheck(){
  if (!Config.CheckUpdates) {
    Util.info("String_Node_Str");
    return;
  }
  Util.info("String_Node_Str");
  try {
    int updateVer;
    int curVer;
    int updateHot=0;
    int curHot=0;
    int updateBuild;
    int curBuild;
    String info;
    URLConnection yc=new URL("String_Node_Str").openConnection();
    BufferedReader in=new BufferedReader(new InputStreamReader(yc.getInputStream()));
    String updateVersion=in.readLine().replace("String_Node_Str","String_Node_Str");
    if (Character.isLetter(updateVersion.charAt(updateVersion.length() - 1))) {
      updateHot=Character.getNumericValue(updateVersion.charAt(updateVersion.length() - 1));
      updateVer=Integer.parseInt(updateVersion.substring(0,updateVersion.length() - 2));
    }
 else     updateVer=Integer.parseInt(updateVersion);
    if (Character.isLetter(version.charAt(version.length() - 1))) {
      curHot=Character.getNumericValue(version.charAt(version.length() - 1));
      curVer=Integer.parseInt(version.substring(0,version.length() - 2));
    }
 else     curVer=Integer.parseInt(version);
    curVer=Integer.parseInt(version.replace("String_Node_Str","String_Node_Str"));
    Pattern pattern=Pattern.compile("String_Node_Str",Pattern.CASE_INSENSITIVE);
    Matcher matcher=pattern.matcher(server.getVersion());
    if (!matcher.find() || matcher.group(1) == null)     throw new Exception();
    curBuild=Integer.parseInt(matcher.group(1));
    updateBuild=Integer.parseInt(in.readLine());
    info=in.readLine();
    if (updateVer > curVer || updateVer == curVer && updateHot > curHot) {
      Util.warning("String_Node_Str" + updateVersion);
      if (updateBuild > curBuild)       Util.warning("String_Node_Str" + curBuild + "String_Node_Str"+ updateBuild+ "String_Node_Str");
 else       Util.warning("String_Node_Str");
      Util.warning("String_Node_Str" + info);
    }
 else     Util.info("String_Node_Str");
    in.close();
  }
 catch (  Exception e) {
    Util.warning("String_Node_Str");
  }
}

Fixed version (ground truth):
/** 
 * Checks if any updates are available for HawkEye Outputs console warning if updates are needed
 */
private void versionCheck(){
  if (!Config.CheckUpdates) {
    Util.info("String_Node_Str");
    return;
  }
  Util.info("String_Node_Str");
  try {
    int updateVer;
    int curVer;
    int updateHot=0;
    int curHot=0;
    int updateBuild;
    int curBuild;
    String info;
    URLConnection yc=new URL("String_Node_Str").openConnection();
    BufferedReader in=new BufferedReader(new InputStreamReader(yc.getInputStream()));
    String updateVersion=in.readLine().replace("String_Node_Str","String_Node_Str");
    if (Character.isLetter(updateVersion.charAt(updateVersion.length() - 1))) {
      updateHot=Character.getNumericValue(updateVersion.charAt(updateVersion.length() - 1));
      updateVer=Integer.parseInt(updateVersion.substring(0,updateVersion.length() - 1));
    }
 else     updateVer=Integer.parseInt(updateVersion);
    if (Character.isLetter(version.charAt(version.length() - 1))) {
      String tversion=version.replace("String_Node_Str","String_Node_Str");
      curHot=Character.getNumericValue(tversion.charAt(tversion.length() - 1));
      curVer=Integer.parseInt(tversion.substring(0,tversion.length() - 1));
    }
 else     curVer=Integer.parseInt(version.replace("String_Node_Str","String_Node_Str"));
    Pattern pattern=Pattern.compile("String_Node_Str",Pattern.CASE_INSENSITIVE);
    Matcher matcher=pattern.matcher(server.getVersion());
    if (!matcher.find() || matcher.group(1) == null)     throw new Exception();
    curBuild=Integer.parseInt(matcher.group(1));
    updateBuild=Integer.parseInt(in.readLine());
    info=in.readLine();
    if (updateVer > curVer || updateVer == curVer && updateHot > curHot) {
      Util.warning("String_Node_Str" + updateVersion);
      if (updateBuild > curBuild)       Util.warning("String_Node_Str" + curBuild + "String_Node_Str"+ updateBuild+ "String_Node_Str");
 else       Util.warning("String_Node_Str");
      Util.warning("String_Node_Str" + info);
    }
 else     Util.info("String_Node_Str");
    in.close();
  }
 catch (  Exception e) {
    Util.warning("String_Node_Str");
    if (Config.Debug)     e.printStackTrace();
  }
}