diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index a08b6487474..ffc5fde6ff5 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -2636,7 +2636,7 @@ void Player::SendKnownSpells() uint32 categoryCooldown = GetSpellHistory()->GetRemainingCategoryCooldown(spellInfo); if (cooldown || categoryCooldown) - knownSpells.SpellHistoryEntries.push_back({ spellInfo->Id, 0, uint16(spellInfo->CategoryEntry->ID), int32(cooldown), int32(categoryCooldown) }); + knownSpells.SpellHistoryEntries.push_back({ spellInfo->Id, 0, uint16(spellInfo->GetCategory()), int32(cooldown), int32(categoryCooldown) }); } } diff --git a/src/server/game/Spells/SpellHistory.cpp b/src/server/game/Spells/SpellHistory.cpp index e338d5fbe2d..958ed21750e 100644 --- a/src/server/game/Spells/SpellHistory.cpp +++ b/src/server/game/Spells/SpellHistory.cpp @@ -537,6 +537,8 @@ uint32 SpellHistory::GetRemainingCooldown(SpellInfo const* spellInfo, bool withC end = catItr->second->CategoryEnd; } + else + return 0; Clock::time_point now = GameTime::GetGameTimeSystemPoint(); if (end < now)