Updated Upstream (CraftBukkit/Spigot)
Doesn't compile yet. CraftBukkit Changes: 90d6905b Repackage NMS 69cf961d Repackage patches Spigot Changes: 79d53c28 Repackage NMS
This commit is contained in:
@@ -8,26 +8,11 @@ Move the criterion storage to the AdvancementDataPlayer object
|
||||
itself, so the criterion object stores no references - and thus
|
||||
needs no cleanup.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
||||
diff --git a/src/main/java/net/minecraft/advancements/critereon/CriterionTriggerAbstract.java b/src/main/java/net/minecraft/advancements/critereon/CriterionTriggerAbstract.java
|
||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||
--- a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
||||
@@ -0,0 +0,0 @@ public class AdvancementDataPlayer {
|
||||
private Advancement l;
|
||||
private boolean m = true;
|
||||
|
||||
+ // Paper start - fix advancement data player leakage
|
||||
+ final Map<CriterionTriggerAbstract, Set<CriterionTrigger.a>> criterionData = Maps.newIdentityHashMap();
|
||||
+ // Paper end - fix advancement data player leakage
|
||||
+
|
||||
public AdvancementDataPlayer(DataFixer datafixer, PlayerList playerlist, AdvancementDataWorld advancementdataworld, File file, EntityPlayer entityplayer) {
|
||||
this.d = datafixer;
|
||||
this.e = playerlist;
|
||||
diff --git a/src/main/java/net/minecraft/server/CriterionTriggerAbstract.java b/src/main/java/net/minecraft/server/CriterionTriggerAbstract.java
|
||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||
--- a/src/main/java/net/minecraft/server/CriterionTriggerAbstract.java
|
||||
+++ b/src/main/java/net/minecraft/server/CriterionTriggerAbstract.java
|
||||
@@ -0,0 +0,0 @@ import java.util.function.Predicate;
|
||||
--- a/src/main/java/net/minecraft/advancements/critereon/CriterionTriggerAbstract.java
|
||||
+++ b/src/main/java/net/minecraft/advancements/critereon/CriterionTriggerAbstract.java
|
||||
@@ -0,0 +0,0 @@ import net.minecraft.world.level.storage.loot.LootTableInfo;
|
||||
|
||||
public abstract class CriterionTriggerAbstract<T extends CriterionInstanceAbstract> implements CriterionTrigger<T> {
|
||||
|
||||
@@ -84,3 +69,18 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||
|
||||
if (t0.b().a(loottableinfo) && predicate.test(t0)) {
|
||||
if (list == null) {
|
||||
diff --git a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||
--- a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
||||
@@ -0,0 +0,0 @@ public class AdvancementDataPlayer {
|
||||
private Advancement l;
|
||||
private boolean m = true;
|
||||
|
||||
+ // Paper start - fix advancement data player leakage
|
||||
+ final Map<CriterionTriggerAbstract, Set<CriterionTrigger.a>> criterionData = Maps.newIdentityHashMap();
|
||||
+ // Paper end - fix advancement data player leakage
|
||||
+
|
||||
public AdvancementDataPlayer(DataFixer datafixer, PlayerList playerlist, AdvancementDataWorld advancementdataworld, File file, EntityPlayer entityplayer) {
|
||||
this.d = datafixer;
|
||||
this.e = playerlist;
|
||||
|
||||
Reference in New Issue
Block a user