From 97180dfefc3a53d399c372deaf59edefa9c55b44 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sat, 1 Oct 2022 10:24:04 +0000 Subject: [PATCH] Fixed potential Attackable NPE. --- .../gameserver/model/actor/Attackable.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/L2J_Mobius_C1_HarbingersOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_C1_HarbingersOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java index 34bda111d3..43ef3e18b1 100644 --- a/L2J_Mobius_C1_HarbingersOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java +++ b/L2J_Mobius_C1_HarbingersOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java @@ -134,27 +134,28 @@ public class Attackable extends Npc } else if (isDead()) { - final Attackable attackable = this; - synchronized (attackable) + synchronized (this) { if (!_killedAlready) { _killedAlready = true; stopRandomWalking(); stopTargetScan(); - calculateRewards(attacker); - - final Player killer = attacker.getActingPlayer(); - if ((killer != null) && (killer.getKarma() > 0)) + calculateRewards(); + if (attacker != null) { - killer.decreaseKarma(); + final Player killer = attacker.getActingPlayer(); + if ((killer != null) && (killer.getKarma() > 0)) + { + killer.decreaseKarma(); + } } } } } } - private void calculateRewards(Creature lastAttacker) + private void calculateRewards() { // TODO: Figure iterator logic and replace with for, if possible. Iterator it = _aggroList.keySet().iterator();