summaryrefslogtreecommitdiffstats
path: root/nms-patches/PlayerDatFileConverter.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nms-patches/PlayerDatFileConverter.patch')
-rw-r--r--nms-patches/PlayerDatFileConverter.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/nms-patches/PlayerDatFileConverter.patch b/nms-patches/PlayerDatFileConverter.patch
new file mode 100644
index 00000000..a1286509
--- /dev/null
+++ b/nms-patches/PlayerDatFileConverter.patch
@@ -0,0 +1,33 @@
+--- ../work/decompile-bb26c12b/net/minecraft/server/PlayerDatFileConverter.java 2014-11-27 08:59:46.857421159 +1100
++++ src/main/java/net/minecraft/server/PlayerDatFileConverter.java 2014-11-27 08:42:10.168850880 +1100
+@@ -47,6 +47,30 @@
+ private void a(File file, String s, String s1) {
+ File file1 = new File(this.d, s + ".dat");
+ File file2 = new File(file, s1 + ".dat");
++
++ // CraftBukkit start - Use old file name to seed lastKnownName
++ NBTTagCompound root = null;
++
++ try {
++ root = NBTCompressedStreamTools.a(new java.io.FileInputStream(file1));
++ } catch (Exception exception) {
++ exception.printStackTrace();
++ }
++
++ if (root != null) {
++ if (!root.hasKey("bukkit")) {
++ root.set("bukkit", new NBTTagCompound());
++ }
++ NBTTagCompound data = root.getCompound("bukkit");
++ data.setString("lastKnownName", s);
++
++ try {
++ NBTCompressedStreamTools.a(root, new java.io.FileOutputStream(file2));
++ } catch (Exception exception) {
++ exception.printStackTrace();
++ }
++ }
++ // CraftBukkit end
+
+ NameReferencingFileConverter.a(file);
+ if (!file1.renameTo(file2)) {