diff --git a/libs/libspell.lua b/libs/libspell.lua index 65298fad..e99de82a 100644 --- a/libs/libspell.lua +++ b/libs/libspell.lua @@ -108,6 +108,9 @@ function libspell.GetSpellInfo(index, bookType) name = GetSpellName(id, bookType) end else + if not bookType or (bookType ~= BOOKTYPE_SPELL and bookType ~= BOOKTYPE_PET) then + return nil + end name, rank = GetSpellName(index, bookType) id, bookType = libspell.GetSpellIndex(name, rank) end diff --git a/libs/libtotem.lua b/libs/libtotem.lua index 9836a4b3..e0bd7c68 100644 --- a/libs/libtotem.lua +++ b/libs/libtotem.lua @@ -252,6 +252,8 @@ end) -- Hook CastSpell to store pending name/icon per slot hooksecurefunc("CastSpell", function(id, bookType) + if not id or not bookType then return end + if bookType ~= BOOKTYPE_SPELL and bookType ~= BOOKTYPE_PET then return end local name, rank, icon, _, _, _, spellId = libspell.GetSpellInfo(id, bookType) if not name then return end libtotem:CheckAddQueue(name, rank, icon, spellId)