3
0
Mirror von https://github.com/PaperMC/Paper.git synchronisiert 2024-12-15 02:50:09 +01:00

Don't leave the NearbyPlayers tracker in an entirely busted state on double-add detection

Dieser Commit ist enthalten in:
Shane Freeder 2023-11-05 22:15:38 +00:00
Ursprung 274e54ba58
Commit 4675152f49
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: A3F61EA5A085289C

Datei anzeigen

@ -5473,7 +5473,7 @@ index 0000000000000000000000000000000000000000..808d1449ac44ae86a650932365081fba
+}
diff --git a/src/main/java/io/papermc/paper/util/player/NearbyPlayers.java b/src/main/java/io/papermc/paper/util/player/NearbyPlayers.java
new file mode 100644
index 0000000000000000000000000000000000000000..a5bd0845a2445fa02561b16fb54a7cf49c114915
index 0000000000000000000000000000000000000000..c3ce8a42dddd76b7189ad5685b23f9d9f8ccadb3
--- /dev/null
+++ b/src/main/java/io/papermc/paper/util/player/NearbyPlayers.java
@@ -0,0 +1,203 @@
@ -5520,7 +5520,7 @@ index 0000000000000000000000000000000000000000..a5bd0845a2445fa02561b16fb54a7cf4
+
+ public void addPlayer(final ServerPlayer player) {
+ final TrackedPlayer[] newTrackers = new TrackedPlayer[TOTAL_MAP_TYPES];
+ if (this.players.put(player, newTrackers) != null) {
+ if (this.players.putIfAbsent(player, newTrackers) != null) {
+ throw new IllegalStateException("Already have player " + player);
+ }
+