57 lines
2.6 KiB
Diff
57 lines
2.6 KiB
Diff
From 37adfdc80fd23c11c9626a9225729c691b208258 Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
|
Date: Tue, 20 Dec 2016 23:09:21 -0600
|
|
Subject: [PATCH] Add option to remove invalid statistics
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
index db2a4c2c7..e936264c5 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -256,4 +256,13 @@ public class PaperConfig {
|
|
private static void playerAutoSaveRate() {
|
|
playerAutoSaveRate = getInt("settings.player-auto-save-rate", -1);
|
|
}
|
|
+
|
|
+ public static boolean removeInvalidStatistics = false;
|
|
+ private static void removeInvalidStatistics() {
|
|
+ if (version < 12) {
|
|
+ boolean oldValue = getBoolean("remove-invalid-statistics", false);
|
|
+ set("settings.remove-invalid-statistics", oldValue);
|
|
+ }
|
|
+ removeInvalidStatistics = getBoolean("settings.remove-invalid-statistics", false);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/ServerStatisticManager.java b/src/main/java/net/minecraft/server/ServerStatisticManager.java
|
|
index 14af226f3..e3d2c0ff7 100644
|
|
--- a/src/main/java/net/minecraft/server/ServerStatisticManager.java
|
|
+++ b/src/main/java/net/minecraft/server/ServerStatisticManager.java
|
|
@@ -86,6 +86,7 @@ public class ServerStatisticManager extends StatisticManager {
|
|
JsonObject jsonobject = jsonelement.getAsJsonObject();
|
|
HashMap hashmap = Maps.newHashMap();
|
|
Iterator iterator = jsonobject.entrySet().iterator();
|
|
+ java.util.List<String> invalidStats = com.google.common.collect.Lists.newArrayList(); // Paper
|
|
|
|
while (iterator.hasNext()) {
|
|
Entry entry = (Entry) iterator.next();
|
|
@@ -119,9 +120,17 @@ public class ServerStatisticManager extends StatisticManager {
|
|
hashmap.put(statistic, statisticwrapper);
|
|
} else {
|
|
ServerStatisticManager.b.warn("Invalid statistic in {}: Don\'t know what {} is", this.d, entry.getKey());
|
|
+ if (com.destroystokyo.paper.PaperConfig.removeInvalidStatistics) invalidStats.add((String) entry.getKey()); // Paper
|
|
}
|
|
}
|
|
|
|
+ // Paper start - Remove invalid statistics
|
|
+ for (String invalid : invalidStats) {
|
|
+ jsonobject.remove(invalid);
|
|
+ ServerStatisticManager.b.info("Removing invalid statistic: " + invalid);
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
return hashmap;
|
|
}
|
|
}
|
|
--
|
|
2.13.0
|
|
|