diff options
author | jackpoz <giacomopoz@gmail.com> | 2013-12-29 19:37:20 +0100 |
---|---|---|
committer | jackpoz <giacomopoz@gmail.com> | 2013-12-29 19:37:20 +0100 |
commit | c40cdc2968c58d952878c09a60926af74f782867 (patch) | |
tree | 520cb50aa5b9442a931e87b4b5b6e90d2ecce2fd /src | |
parent | e016ef3dbd51bc2262a9762ae7f9c1345a0f2ddc (diff) |
Core/Chat: Fix assert triggered by .npc add
Fix an assert in Aura::_UnapplyForTarget() caused by ".npc add" changing the guid of the spawned Creature.
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Commands/cs_npc.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/scripts/Commands/cs_npc.cpp b/src/server/scripts/Commands/cs_npc.cpp index 12d0d4ea4f2..0306aed184d 100644 --- a/src/server/scripts/Commands/cs_npc.cpp +++ b/src/server/scripts/Commands/cs_npc.cpp @@ -275,7 +275,11 @@ public: uint32 db_guid = creature->GetDBTableGUIDLow(); - // To call _LoadGoods(); _LoadQuests(); CreateTrainerSpells(); + // To call _LoadGoods(); _LoadQuests(); CreateTrainerSpells() + // current "creature" variable is deleted and created fresh new, otherwise old values might trigger asserts or cause undefined behavior + creature->CleanupsBeforeDelete(); + delete creature; + creature = new Creature(); if (!creature->LoadCreatureFromDB(db_guid, map)) { delete creature; |