Skip to content

Commit a546caf

Browse files
committed
Fix concurrent modification when removing player
1 parent bfdc43d commit a546caf

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2+
From: PureGero <puregero@gmail.com>
3+
Date: Thu, 20 Nov 2025 15:38:21 +0900
4+
Subject: [PATCH] Fix: Concurrent modification when removing player
5+
6+
7+
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
8+
index 973110b208a4026fd296663f58cd60960d9c6a1c..66cb6ad79c1910dd86f61a68adaf1ea00e95ce49 100644
9+
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
10+
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
11+
@@ -702,8 +702,7 @@ public abstract class PlayerList {
12+
// CraftBukkit start
13+
// this.broadcastAll(new ClientboundPlayerInfoRemovePacket(List.of(entityplayer.getUUID())));
14+
ClientboundPlayerInfoRemovePacket packet = new ClientboundPlayerInfoRemovePacket(List.of(entityplayer.getUUID()));
15+
- for (int i = 0; i < this.players.size(); i++) {
16+
- ServerPlayer entityplayer2 = (ServerPlayer) this.players.get(i);
17+
+ for (ServerPlayer entityplayer2 : this.players) { // ShreddedPaper - Fix concurrent modification
18+
19+
if (entityplayer2.getBukkitEntity().canSee(entityplayer.getBukkitEntity())) {
20+
entityplayer2.connection.send(packet);

0 commit comments

Comments
 (0)