소스 검색

Fort missing owner clan cleanup.
Synchronized getItems ItemContainer.

JIV 15 년 전
부모
커밋
6da25eaac7

+ 1 - 0
L2_GameServer/java/com/l2jserver/gameserver/idfactory/IdFactory.java

@@ -251,6 +251,7 @@ public abstract class IdFactory
 			stmt.executeUpdate("UPDATE castle SET taxpercent=0 WHERE castle.id NOT IN (SELECT hasCastle FROM clan_data);");
 			stmt.executeUpdate("UPDATE characters SET clanid=0, clan_privs=0, wantspeace=0, subpledge=0, lvl_joined_academy=0, apprentice=0, sponsor=0, clan_join_expiry_time=0, clan_create_expiry_time=0 WHERE characters.clanid > 0 AND characters.clanid NOT IN (SELECT clan_id FROM clan_data);");
 			stmt.executeUpdate("UPDATE clanhall SET ownerId=0, paidUntil=0, paid=0 WHERE clanhall.ownerId NOT IN (SELECT clan_id FROM clan_data);");
+			stmt.executeUpdate("UPDATE fort SET owner=0 WHERE owner NOT IN (SELECT clan_id FROM clan_data);");
 			
 			_log.info("Cleaned " + cleanCount + " elements from database.");
 		}

+ 4 - 1
L2_GameServer/java/com/l2jserver/gameserver/model/itemcontainer/ItemContainer.java

@@ -80,7 +80,10 @@ public abstract class ItemContainer
 	 */
 	public L2ItemInstance[] getItems()
 	{
-		return _items.toArray(new L2ItemInstance[_items.size()]);
+		synchronized (_items)
+		{
+			return _items.toArray(new L2ItemInstance[_items.size()]);
+		}
 	}
 	
 	/**