Fixed ConcurrentModificationException

This commit is contained in:
DiddiZ
2011-12-18 19:29:45 +01:00
parent 1739e7f59c
commit 17d8a5eb65
2 changed files with 7 additions and 3 deletions

View File

@@ -3,7 +3,7 @@ package de.diddiz.LogBlock;
public enum Logging {
BLOCKPLACE(true), BLOCKBREAK(true), SIGNTEXT, TNTEXPLOSION(true), CREEPEREXPLOSION(true), GHASTFIREBALLEXPLOSION(true), ENDERDRAGON(true), MISCEXPLOSION, FIRE(true), LEAVESDECAY, LAVAFLOW, WATERFLOW, CHESTACCESS, KILL, CHAT, SNOWFORM, SNOWFADE, DOORINTERACT, SWITCHINTERACT, CAKEEAT, ENDERMEN, NOTEBLOCKINTERACT, DIODEINTERACT, NATURALSTRUCTUREGROW, BONEMEALSTRUCTUREGROW;
public static int length = Logging.values().length;
public static final int length = Logging.values().length;
private final boolean defaultEnabled;

View File

@@ -18,6 +18,7 @@ import java.sql.Savepoint;
import java.sql.Statement;
import java.sql.Struct;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import java.util.Vector;
@@ -85,9 +86,12 @@ public class MySQLConnectionPool implements Closeable
private void reapConnections() {
lock.lock();
final long stale = System.currentTimeMillis() - timeToLive;
for (final JDCConnection conn : connections)
final Iterator<JDCConnection> itr = connections.iterator();
while (itr.hasNext()) {
final JDCConnection conn = itr.next();
if (conn.inUse() && stale > conn.getLastUse() && !conn.isValid())
connections.remove(conn);
itr.remove();
}
lock.unlock();
}