aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/SpellMgr.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp
index d1378ff58e4..08c66eeffee 100644
--- a/src/server/game/Spells/SpellMgr.cpp
+++ b/src/server/game/Spells/SpellMgr.cpp
@@ -826,6 +826,12 @@ void SpellMgr::LoadSpellTalentRanks()
for (TalentEntry const* talentInfo : sTalentStore)
{
+ // In Classic, the Talent.db2 and TalentTab.db2 are polluted with deprecated data which can be
+ // identified by a negative order index. We just skip these.
+ TalentTabEntry const* talentTab = sTalentTabStore.LookupEntry(talentInfo->TabID);
+ if (!talentTab || talentTab->OrderIndex < 0)
+ continue;
+
SpellInfo const* lastSpell = nullptr;
for (size_t rank = talentInfo->SpellRank.size() - 1; rank > 0; --rank)
{