fix: dedupe unavailable quest draw logs

This commit is contained in:
Xurkon
2026-06-05 22:22:55 -05:00
parent b75d624938
commit c6e118165f
2 changed files with 8 additions and 1 deletions
+7 -1
View File
@@ -35,6 +35,7 @@ local timer
-- Keep track of all available quests to unload undoable when abandoning a quest
local availableQuests = {}
local unavailableQuestLogged = {}
local dungeons = ZoneDB:GetDungeons()
@@ -283,7 +284,10 @@ _DrawAvailableQuest = function(questId)
NewThread(function()
local quest = QuestieDB.GetQuest(questId)
if not quest then
Questie:Debug(Questie.DEBUG_LEARNER, "[AvailableQuests] Skipping unavailable quest during draw:", questId)
if not unavailableQuestLogged[questId] then
unavailableQuestLogged[questId] = true
Questie:Debug(Questie.DEBUG_LEARNER, "[AvailableQuests] Skipping unavailable quest during draw:", questId)
end
return
end
if (not quest.tagInfoWasCached) then
@@ -292,6 +296,8 @@ _DrawAvailableQuest = function(questId)
quest.tagInfoWasCached = true
end
unavailableQuestLogged[questId] = nil
AvailableQuests.DrawAvailableQuest(quest)
end, 0)
end
+1
View File
@@ -10,6 +10,7 @@ describe("Questie available quests guard", function()
local content = read("Modules/Quest/AvailableQuests.lua")
assert.is_true(content:find("if not quest then", 1, true) ~= nil)
assert.is_true(content:find("Skipping unavailable quest during draw", 1, true) ~= nil)
assert.is_true(content:find("unavailableQuestLogged[questId]", 1, true) ~= nil)
assert.is_true(content:find("quest.tagInfoWasCached = true", 1, true) ~= nil)
end)
end)