Program: 12343
Project: 12343
Buggy source:
protected void doSave(Path outputFile){
  try {
    if (configDirty)     updateConfigEntry();
    if (moduleDirty)     updateModuleEntry();
    if (serverDirty)     updateServerEntry();
    BufferedWriter fileWriter=Files.newBufferedWriter(outputFile,StandardCharsets.UTF_8,StandardOpenOption.CREATE);
    fileWriter.write("String_Node_Str");
    fileWriter.newLine();
    fileWriter.write("String_Node_Str");
    fileWriter.newLine();
    fileWriter.write("String_Node_Str" + Version.API_VERSION + "String_Node_Str");
    fileWriter.newLine();
    for (    ServerDefinition server : modelServer.getContents()) {
      fileWriter.write("String_Node_Str" + server.getServer().getServerId() + "String_Node_Str"+ server.getServer().getName()+ "String_Node_Str"+ server.getServer().getNewsUrl()+ "String_Node_Str"+ server.getServer().getIconUrl()+ "String_Node_Str"+ server.getServer().getVersion()+ "String_Node_Str"+ server.getServer().getAddress()+ "String_Node_Str"+ server.getServer().getRevision()+ "String_Node_Str"+ server.getServer().isGenerateList()+ "String_Node_Str");
      fileWriter.newLine();
      for (      Module entry : server.getModules()) {
        fileWriter.write("String_Node_Str" + entry.getName() + "String_Node_Str"+ entry.getId()+ "String_Node_Str"+ entry.getDepends()+ "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + xmlEscape(entry.getUrl()) + "String_Node_Str");
        fileWriter.newLine();
        if (!entry.getPath().equals("String_Node_Str")) {
          fileWriter.write("String_Node_Str" + xmlEscape(entry.getPath()) + "String_Node_Str");
          fileWriter.newLine();
        }
        fileWriter.write("String_Node_Str" + (entry.getRequired() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getIsDefault() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getInJar() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        if (entry.getInJar() == true) {
          fileWriter.write("String_Node_Str" + (entry.getJarOrder()) + "String_Node_Str");
          fileWriter.newLine();
        }
        fileWriter.write("String_Node_Str" + (entry.getKeepMeta() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getExtract() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getInRoot() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getCoreMod() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + xmlEscape(entry.getMD5()) + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str");
        fileWriter.newLine();
        Iterator<Entry<String,String>> itMeta=entry.getMeta().entrySet().iterator();
        while (itMeta.hasNext()) {
          Entry<String,String> metaEntry=itMeta.next();
          if (!metaEntry.getKey().isEmpty()) {
            fileWriter.write("String_Node_Str" + metaEntry.getKey() + "String_Node_Str"+ metaEntry.getValue()+ "String_Node_Str"+ metaEntry.getKey()+ "String_Node_Str");
            fileWriter.newLine();
          }
        }
        fileWriter.write("String_Node_Str");
        fileWriter.newLine();
        for (        ConfigFileWrapper cfw : server.getConfigs()) {
          if (cfw.getParentId().equals(entry.getId())) {
            fileWriter.write("String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + xmlEscape(cfw.getConfigFile().getUrl()) + "String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + xmlEscape(cfw.getConfigFile().getPath()) + "String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + xmlEscape(cfw.getConfigFile().getMD5()) + "String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str");
            fileWriter.newLine();
          }
        }
        fileWriter.write("String_Node_Str");
        fileWriter.newLine();
      }
      fileWriter.write("String_Node_Str");
      fileWriter.newLine();
    }
    fileWriter.write("String_Node_Str");
    fileWriter.newLine();
    fileWriter.close();
    packDirty=false;
  }
 catch (  IOException e1) {
    e1.printStackTrace();
  }
}

Fixed version (ground truth):
protected void doSave(Path outputFile){
  try {
    if (configDirty)     updateConfigEntry();
    if (moduleDirty)     updateModuleEntry();
    if (serverDirty)     updateServerEntry();
    BufferedWriter fileWriter=Files.newBufferedWriter(outputFile,StandardCharsets.UTF_8,StandardOpenOption.CREATE);
    fileWriter.write("String_Node_Str");
    fileWriter.newLine();
    fileWriter.write("String_Node_Str");
    fileWriter.newLine();
    fileWriter.write("String_Node_Str" + Version.API_VERSION + "String_Node_Str");
    fileWriter.newLine();
    for (    ServerDefinition server : modelServer.getContents()) {
      fileWriter.write("String_Node_Str" + server.getServer().getServerId() + "String_Node_Str"+ server.getServer().getName()+ "String_Node_Str"+ server.getServer().getNewsUrl()+ "String_Node_Str"+ server.getServer().getIconUrl()+ "String_Node_Str"+ server.getServer().getVersion()+ "String_Node_Str"+ server.getServer().getAddress()+ "String_Node_Str"+ server.getServer().getRevision()+ "String_Node_Str"+ server.getServer().isGenerateList()+ "String_Node_Str");
      fileWriter.newLine();
      for (      Module entry : server.getModules()) {
        fileWriter.write("String_Node_Str" + entry.getName() + "String_Node_Str"+ entry.getId()+ "String_Node_Str"+ entry.getDepends()+ "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + xmlEscape(entry.getUrl()) + "String_Node_Str");
        fileWriter.newLine();
        if (!entry.getPath().equals("String_Node_Str")) {
          fileWriter.write("String_Node_Str" + xmlEscape(entry.getPath()) + "String_Node_Str");
          fileWriter.newLine();
        }
        fileWriter.write("String_Node_Str" + (entry.getRequired() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getIsDefault() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getInJar() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        if (entry.getInJar() == true) {
          fileWriter.write("String_Node_Str" + (entry.getJarOrder()) + "String_Node_Str");
          fileWriter.newLine();
        }
        fileWriter.write("String_Node_Str" + (entry.getKeepMeta() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getExtract() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getInRoot() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + (entry.getCoreMod() == true ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str" + xmlEscape(entry.getMD5()) + "String_Node_Str");
        fileWriter.newLine();
        fileWriter.write("String_Node_Str");
        fileWriter.newLine();
        Iterator<Entry<String,String>> itMeta=entry.getMeta().entrySet().iterator();
        while (itMeta.hasNext()) {
          Entry<String,String> metaEntry=itMeta.next();
          if (!metaEntry.getKey().isEmpty()) {
            fileWriter.write("String_Node_Str" + metaEntry.getKey() + "String_Node_Str"+ metaEntry.getValue()+ "String_Node_Str"+ metaEntry.getKey()+ "String_Node_Str");
            fileWriter.newLine();
          }
        }
        fileWriter.write("String_Node_Str");
        fileWriter.newLine();
        for (        ConfigFileWrapper cfw : server.getConfigs()) {
          if (cfw.getParentId().equals(entry.getId())) {
            fileWriter.write("String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + xmlEscape(cfw.getConfigFile().getUrl()) + "String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + xmlEscape(cfw.getConfigFile().getPath()) + "String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + xmlEscape(cfw.getConfigFile().getMD5()) + "String_Node_Str");
            fileWriter.newLine();
            fileWriter.write("String_Node_Str" + cfw.getConfigFile().isNoOverwrite() + "String_Node_Str");
            fileWriter.write("String_Node_Str");
            fileWriter.newLine();
          }
        }
        fileWriter.write("String_Node_Str");
        fileWriter.newLine();
      }
      fileWriter.write("String_Node_Str");
      fileWriter.newLine();
    }
    fileWriter.write("String_Node_Str");
    fileWriter.newLine();
    fileWriter.close();
    packDirty=false;
  }
 catch (  IOException e1) {
    e1.printStackTrace();
  }
}