[string "*Help.xml:44_OnLoad"]:10: attempt to index field 'arrow' (a nil value)
Raidfather opened this issue ยท 2 comments
WoW Version
Retail
TellMeWhen Version
0.0.0
Describe the bug
Just ran into this today after the patch, haven't had time to look into it myself yet
`Message: [string "*Help.xml:44_OnLoad"]:10: attempt to index field 'arrow' (a nil value)
Time: Wed Apr 23 08:52:19 2025
Count: 1
Stack:
[*Help.xml:44_OnLoad]:10: in function <[string "*Help.xml:44_OnLoad"]:1>
[C]: in function 'resume'
[Interface/AddOns/TellMeWhen/TellMeWhen.lua]:2816: in function <Interface/AddOns/TellMeWhen/TellMeWhen.lua:2777>
Locals:
self = TellMeWhen_HelpFrame {
Glow = Texture {
}
Arrow = Texture {
}
current =
}
body = TellMeWhen_HelpFrameBody {
}
}
arrow = TellMeWhen_HelpFrame {
Glow = Texture {
}
Arrow = Texture {
}
current =
}
body = TellMeWhen_HelpFrameBody {
}
}
(*temporary) = nil
(*temporary) = nil
(*temporary) = "Arrow"
(*temporary) = "TellMeWhen_HelpFrame"
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index field 'arrow' (a nil value)"
`
Export Strings
s
worked around it for now by adding a nil check, since I don't understand any of that code
<OnLoad>
self.current = {}
self:SetFrameLevel(200)
self:SetFrameStrata("FULLSCREEN_DIALOG")
self:SetToplevel(true)
local arrow = self
self.testA = arrow
arrow.arrow = _G[arrow:GetName() .. "Arrow"]
if arrow.arrow then
arrow.arrow:SetAllPoints(true)
arrow.arrow:SetTexCoord(0.78515625, 0.54687500, 0.99218750, 0.54687500, 0.78515625, 0.58789063, 0.99218750, 0.58789063)
arrow.glow = _G[arrow:GetName() .. "Glow"]
arrow.glow:SetAllPoints(true)
arrow.glow:SetTexCoord(0.40625000, 0.77343750, 0.66015625, 0.77343750, 0.40625000, 0.82812500, 0.66015625, 0.82812500)
end
self.body.text:SetSpacing(4)
</OnLoad>
ADDITIONAL INFO: Blizzard seems to have removed a few of their templates. In this case, the GlowBoxArrowTemplate has been removed from SharedUIPanelTemplates.xml for WoW 11.1.5.
FYI - This is what that template definition looked like in the 11.1.0 code ...
<!--
*******************************************************************************
GlowBoxArrowTemplate
This is a bright yellow arrow with a glow around it
*******************************************************************************
-->
<Frame name="GlowBoxArrowTemplate" virtual="true">
<Size x="53" y="21"/>
<Layers>
<Layer level="ARTWORK">
<Texture name="$parentArrow" parentKey="Arrow" inherits="HelpPlateArrowDOWN">
<Anchors>
<Anchor point="TOPLEFT"/>
</Anchors>
</Texture>
</Layer>
<Layer level="BORDER">
<Texture name="$parentGlow" parentKey="Glow" inherits="HelpPlateArrow-GlowDOWN" alphaMode="ADD" alpha="0.5">
<Anchors>
<Anchor point="TOP"/>
</Anchors>
</Texture>
</Layer>
</Layers>
</Frame>