Aiue's Quest Tracker (AQT)

Aiue's Quest Tracker (AQT)

21.6k Downloads

An issue where all headers disappear when the quest is completed during combat.

chkmyid opened this issue · 9 comments

commented

We need to re-create this issue.
Unfortunately, I couldn't keep the error message.

WoWScrnShot_6

commented

Probably something relating to fader animations. I've been working a bit on them, trying to make them behave better. Apparently I need to tweak them even more than I thought.

commented

(I've also noticed an other issue where headers seem to stay around when they shouldn't. I definitely need to polish things before moving on to adding new features.)

commented

I tried hard to recreate the situation where headers disappeared.
Please take a look at the following error message.

1x AQT\GUI.lua:683: attempt to index local 'b' (a nil value)
AQT\GUI.lua:683: in function <AQT\GUI.lua:682>
[C]: ?
AQT\GUI.lua:682: in function Sort' AQT\GUI.lua:635: in function Update'
AQT\GUI.lua:556: in function New' AQT\Core.lua:408: in function CreateUIObject'
AQT\Core.lua:757: in function Track' AQT\Core.lua:674: in function New'
AQT\Core.lua:929: in function `?'
AQT\Core.lua:1108: in function <AQT\Core.lua:1107>

Locals:
a = {
0 =
releasing = true
text = {
}
owner =

{
}
container = {
}
scripts =
{
}
button = {
}
children =
{
}
counter = {
}
}
b = nil
(*temporary) =
{
trackedQuests =
{
}
name = "붉은마루 산맥"
uiObject = {
}
lastUpdate = 1572340240
quests =
{
}
}
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'b' (a nil value)"
st =
{
SOUND_OBJECTIVE_PROGRESS = 3
SOUND_OBJECTIVE_COMPLETE = 2
cfg =
{
}
db =
{
}
gui = AQTParent {
}
initConfig = defined @aqt\Config.lua:1713
L =
{
}
SOUND_COMPLETE = 1
types =
{
}
}

commented

18x FrameXML\QuestLogFrame.lua:165: attempt to concatenate local 'questLogTitleText' (a nil value)
FrameXML\QuestLogFrame.lua:165: in function QuestLog_Update' AQT\Core.lua:249: in function func'
AQT\GUI.lua:1064: in function <AQT\GUI.lua:980>

Locals:
self = nil
numEntries = 16
numQuests = 12
questIndex = -6
questLogTitle = QuestLogTitle1 {
0 =
isHeader = true
r = 0.700000
Text = QuestLogTitle1NormalText {
}
g = 0.700000
b = 0.700000
}
questTitleTag = QuestLogTitle1Tag {
0 =
}
questNumGroupMates = QuestLogTitle1GroupMates {
0 =
}
questNormalText = QuestLogTitle1NormalText {
0 =
}
questHighlight = QuestLogTitle1Highlight {
0 =
}
questCheck = QuestLogTitle1Check {
0 =
}
questLogTitleText = nil
level = 0
questTag = nil
isHeader = false
isCollapsed = false
isComplete = nil
color = nil
numPartyMembers = nil
partyMembersOnQuest = nil
tempWidth = nil
textWidth = nil
(for index) = 1
(for limit) = 23
(for step) = 1
i = 1
(*temporary) = defined =[C]:-1
(*temporary) = QuestLogTitle1 {
0 =
isHeader = true
r = 0.700000
Text = QuestLogTitle1NormalText {
}
g = 0.700000
b = 0.700000
}
(*temporary) = " "
(*temporary) = nil
(*temporary) = false
(*temporary) = nil
(*temporary) = 1
(*temporary) = 0
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = false
(*temporary) = "attempt to concatenate local 'questLogTitleText' (a nil value)"

commented

I suppose I could also hijack the reference to GetQuestLogTitle(), and if the first return is nil, replace it with an empty string. The drawback would be that that risks breaking things that rely on checking whether or not it is nil.

I'll bug report it to Blizz once logged on.

commented

The first one seems strange. Neither field should ever be nil, I will have to look into what's causing that.

The second error isn't really on my end, but rather on Blizzard's. The only thing I can do there is scan the questlog, and only call QuestLog_Update() if none of the entries return nil.

But really, they should encapsule that with a tostring() if it can return title as nil.

But I'll investigate the first part. It seems as though it somehow fails to create a uiobject for something, and inserts a nil entry in the containing table. Need to try to figure out why this would happen.

commented

Alright, hacking GetQuestLogTitle() is a bad option, as it leads to infinite iterations or recurions somewhere. So I can't make that error completely go away, I can only take steps to ensure I won't take the blame for it.

commented

I keep forgetting to mention issues in my commits lately. I've adressed both these, at least on the surface level. Will still need to get to the underlying cause of the former issue.

image
Also, let me know if you want me to add another webhook to send these types of notifications to.

commented

I'll tag a release to include these fixes.