From 9029e4c12c968d3fffd09bae70b1dca2cb5b5130 Mon Sep 17 00:00:00 2001 From: Mads Boddum Date: Sat, 14 May 2016 19:40:00 +0200 Subject: [PATCH] Fixed an issue where a delta for CreatureObject.skills was sent regardless of modification and a concurrency issue --- src/resources/objects/creature/CreatureObject.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/resources/objects/creature/CreatureObject.java b/src/resources/objects/creature/CreatureObject.java index 6f57146f5..5a393a76b 100644 --- a/src/resources/objects/creature/CreatureObject.java +++ b/src/resources/objects/creature/CreatureObject.java @@ -188,8 +188,11 @@ public class CreatureObject extends TangibleObject { } public void addSkill(String skillName) { - skills.add(skillName); - skills.sendDeltaMessage(this); + synchronized(skills) { + if(skills.add(skillName)) { + skills.sendDeltaMessage(this); + } + } } public boolean hasSkill(String skillName) {