Program: 27615
Project: 27615
Buggy source:
@Overwrite public void saveWorldInfoWithPlayer(WorldInfo worldInformation,NBTTagCompound tagCompound){
  NBTTagCompound nbttagcompound1=worldInformation.cloneNBTCompound(tagCompound);
  NBTTagCompound nbttagcompound2=new NBTTagCompound();
  nbttagcompound2.setTag("String_Node_Str",nbttagcompound1);
  if (DimensionManager.getCurrentSaveRootDirectory().equals(this.worldDirectory)) {
    net.minecraftforge.fml.common.FMLCommonHandler.instance().handleWorldDataSave((SaveHandler)(Object)this,worldInformation,nbttagcompound2);
  }
  try {
    File file1=new File(this.worldDirectory,"String_Node_Str");
    File file2=new File(this.worldDirectory,"String_Node_Str");
    File file3=new File(this.worldDirectory,"String_Node_Str");
    CompressedStreamTools.writeCompressed(nbttagcompound2,new FileOutputStream(file1));
    if (file2.exists()) {
      file2.delete();
    }
    file3.renameTo(file2);
    if (file3.exists()) {
      file3.delete();
    }
    file1.renameTo(file3);
    if (file1.exists()) {
      file1.delete();
    }
  }
 catch (  Exception exception) {
    exception.printStackTrace();
  }
  try {
    File spongeFile1=new File(this.worldDirectory,"String_Node_Str");
    File spongeFile2=new File(this.worldDirectory,"String_Node_Str");
    File spongeFile3=new File(this.worldDirectory,"String_Node_Str");
    CompressedStreamTools.writeCompressed(((IMixinWorldInfo)worldInformation).getSpongeRootLevelNbt(),new FileOutputStream(spongeFile1));
    if (spongeFile2.exists()) {
      spongeFile2.delete();
    }
    spongeFile3.renameTo(spongeFile2);
    if (spongeFile3.exists()) {
      spongeFile3.delete();
    }
    spongeFile1.renameTo(spongeFile3);
    if (spongeFile1.exists()) {
      spongeFile1.delete();
    }
  }
 catch (  Exception exception) {
    exception.printStackTrace();
  }
}

Fixed version (ground truth):
@Overwrite public void saveWorldInfoWithPlayer(WorldInfo worldInformation,NBTTagCompound tagCompound){
  NBTTagCompound nbttagcompound1=worldInformation.cloneNBTCompound(tagCompound);
  NBTTagCompound nbttagcompound2=new NBTTagCompound();
  nbttagcompound2.setTag("String_Node_Str",nbttagcompound1);
  if (this.worldDirectory.getParentFile() == null || (FMLCommonHandler.instance().getSide() == Side.CLIENT && this.worldDirectory.getParentFile().equals(FMLCommonHandler.instance().getSavesDirectory()))) {
    net.minecraftforge.fml.common.FMLCommonHandler.instance().handleWorldDataSave((SaveHandler)(Object)this,worldInformation,nbttagcompound2);
  }
  try {
    File file1=new File(this.worldDirectory,"String_Node_Str");
    File file2=new File(this.worldDirectory,"String_Node_Str");
    File file3=new File(this.worldDirectory,"String_Node_Str");
    CompressedStreamTools.writeCompressed(nbttagcompound2,new FileOutputStream(file1));
    if (file2.exists()) {
      file2.delete();
    }
    file3.renameTo(file2);
    if (file3.exists()) {
      file3.delete();
    }
    file1.renameTo(file3);
    if (file1.exists()) {
      file1.delete();
    }
  }
 catch (  Exception exception) {
    exception.printStackTrace();
  }
  try {
    File spongeFile1=new File(this.worldDirectory,"String_Node_Str");
    File spongeFile2=new File(this.worldDirectory,"String_Node_Str");
    File spongeFile3=new File(this.worldDirectory,"String_Node_Str");
    CompressedStreamTools.writeCompressed(((IMixinWorldInfo)worldInformation).getSpongeRootLevelNbt(),new FileOutputStream(spongeFile1));
    if (spongeFile2.exists()) {
      spongeFile2.delete();
    }
    spongeFile3.renameTo(spongeFile2);
    if (spongeFile3.exists()) {
      spongeFile3.delete();
    }
    spongeFile1.renameTo(spongeFile3);
    if (spongeFile1.exists()) {
      spongeFile1.delete();
    }
  }
 catch (  Exception exception) {
    exception.printStackTrace();
  }
}