From 34ccdb68e25a6697bc759e9c449e633e1e63ba85 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Mon, 15 Jan 2018 09:12:30 +0000 Subject: [PATCH] Use iterator for siege player removal. --- .../com/l2jmobius/gameserver/model/entity/Siege.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/entity/Siege.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/entity/Siege.java index 2282313091..73e4564bc4 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/entity/Siege.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/entity/Siege.java @@ -22,6 +22,7 @@ import java.sql.ResultSet; import java.util.ArrayList; import java.util.Calendar; import java.util.Collections; +import java.util.Iterator; import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.ScheduledFuture; @@ -1047,11 +1048,13 @@ public class Siege implements Siegable case NotOwner: { players = getPlayersInZone(); - for (L2PcInstance player : players) + final Iterator it = players.iterator(); + while (it.hasNext()) { + final L2PcInstance player = it.next(); if ((player == null) || player.inObserverMode() || ((player.getClanId() > 0) && (player.getClanId() == getCastle().getOwnerId()))) { - players.remove(player); + it.remove(); } } break; @@ -1068,7 +1071,7 @@ public class Siege implements Siegable } default: { - players = Collections. emptyList(); + players = Collections.emptyList(); } }