QuestieOptionsTracker 'attempt to index field' FadeMMBTicker/FadeQIBTicker (a nil value)
kristinclemens opened this issue ยท 1 comments
Bug description
Checking and unchecking the Questie Tracker Options Fade Min/Max BTNs
and Fade Quest Item BTNs
several times results in attempting to call FadeMMBTicker:Cancel()
or FadeQIBTicker:Cancel()
on a nil
value. Glancing at the code, it looks like it's probably a race condition, but I'm not familiar enough with lua or how Tickers work to know how to fix it.
This is reproducible by checking and unchecking either of those options several times back to back. It doesn't have to be super rapid, ~1/2 second apart is enough to reproduce the error.
Message: ...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:244: attempt to index field 'FadeQIBTicker' (a nil value)
Time: Sat Feb 27 11:52:26 2021
Count: 6
Stack: ...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:244: attempt to index field 'FadeQIBTicker' (a nil value)
...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:244: in function <...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:230>
Interface\SharedXML\C_TimerAugment.lua:16: in function <Interface\SharedXML\C_TimerAugment.lua:14>
Locals: (*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index field 'FadeQIBTicker' (a nil value)"
QuestieTracker = <table> {
HookBaseTracker = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2066
MoveDurabilityFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1114
Enable = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1152
_alreadyHooked = true
Expand = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1198
_GetNumQuestWatches = <function> defined =[C]:-1
GetBaseFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1084
FadeMMBTickerValue = -0.000000
UpdateQuestProximityTimer = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2398
started = true
FocusQuest = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2024
ResetDurabilityFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1109
Initialize = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:56
Disable = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1166
Unhook = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2052
RemoveQuest = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2216
_order = <table> {
}
FocusObjective = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1984
private = <table> {
}
CheckDurabilityAlertStatus = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1128
Untrack = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2042
_IsQuestWatched = <function> defined =[C]:-1
IsExpanded = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1204
UnFocus = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1935
utils = <table> {
}
Update = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1208
_alreadyHookedSecure = true
Collapse = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1192
Toggle = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1178
ResetLinesForChange = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2199
menu = <table> {
}
FadeQIBTickerValue = -0.000000
ResetLocation = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1088
}
_QuestieTracker = <table> {
ItemButtons = <table> {
}
trackerLineWidth = 187.500000
AutoConvertSetPoint = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTrackerPrivates.lua:126
StartFadeTicker = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1853
baseFrame = Questie_BaseFrame {
}
highestIndex = 8
CreateTrackedQuestsFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:569
OnResizeStop = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTrackerPrivates.lua:113
trackedQuestsFrame = Questie_TrackedQuests {
}
GetNextItemButton = <function> defined @Interface\AddOns\Questie\Modules\T
Message: ...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:206: attempt to index field 'FadeMMBTicker' (a nil value)
Time: Sat Feb 27 11:53:53 2021
Count: 4
Stack: ...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:206: attempt to index field 'FadeMMBTicker' (a nil value)
...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:206: in function <...Modules\Options\TrackerTab\QuestieOptionsTracker.lua:194>
Interface\SharedXML\C_TimerAugment.lua:16: in function <Interface\SharedXML\C_TimerAugment.lua:14>
Locals: (*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index field 'FadeMMBTicker' (a nil value)"
QuestieTracker = <table> {
HookBaseTracker = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2066
MoveDurabilityFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1114
Enable = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1152
_alreadyHooked = true
Expand = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1198
_GetNumQuestWatches = <function> defined =[C]:-1
GetBaseFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1084
FadeMMBTickerValue = -0.000000
UpdateQuestProximityTimer = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2398
started = true
FocusQuest = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2024
ResetDurabilityFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1109
Initialize = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:56
Disable = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1166
Unhook = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2052
RemoveQuest = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2216
_order = <table> {
}
FocusObjective = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1984
private = <table> {
}
CheckDurabilityAlertStatus = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1128
Untrack = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2042
_IsQuestWatched = <function> defined =[C]:-1
IsExpanded = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1204
UnFocus = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1935
utils = <table> {
}
Update = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1208
_alreadyHookedSecure = true
Collapse = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1192
Toggle = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1178
ResetLinesForChange = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:2199
menu = <table> {
}
FadeQIBTickerValue = -0.000000
ResetLocation = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1088
}
_QuestieTracker = <table> {
ItemButtons = <table> {
}
trackerLineWidth = 187.500000
AutoConvertSetPoint = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTrackerPrivates.lua:126
StartFadeTicker = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:1853
baseFrame = Questie_BaseFrame {
}
highestIndex = 8
CreateTrackedQuestsFrame = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTracker.lua:569
OnResizeStop = <function> defined @Interface\AddOns\Questie\Modules\Tracker\QuestieTrackerPrivates.lua:113
trackedQuestsFrame = Questie_TrackedQuests {
}
GetNextItemButton = <function> defined @Interface\AddOns\Questie\Modules\T
Questie version
v6.2.5
Hey @kristinclemens ,
Thanks for the write-up. The tracker is getting completely re-written for BC and this likely won't be an issue any more then. You can keep an eye on it as we level. (=