I’m just getting around to working on an Classic world of warcraft addon that was abandoned. The addon in question is Wide Quest Log. The recent classic patch (a week or two old?) incorporated a lot of changes that happened to dragonflight, such as moving things to C_CurrencyInfo and C_Container namespaces along with some others. There was some sort of texture changes as well that I couldn’t track down. in particular, the [condensed] code is:
local regions = { QuestLogFrame:GetRegions() }
local PATTERN = "^Interface\\QuestFrame\\UI%-QuestLog%-(([A-Z][a-z]+)([A-Z][a-z]+))$";
for _, region in ipairs(regions) do
if (region:IsObjectType("Texture")) then
local texturefile = region:GetTexture();
local which, yofs, xofs = texturefile:match(PATTERN); -- line 107
The following error applies to the last line of that blurb
Message: Interface/AddOns/WideQuestLog/WideQuestLog.lua:107: attempt to index local 'texturefile' (a number value)
Time: Tue Jan 24 13:10:35 2023
Count: 1
Stack: Interface/AddOns/WideQuestLog/WideQuestLog.lua:107: attempt to index local 'texturefile' (a number value)
[string "@Interface/AddOns/WideQuestLog/WideQuestLog.lua"]:107: in main chunk
Locals: elvEnabled = false
ElvSkinFrames = <function> defined @Interface/AddOns/WideQuestLog/WideQuestLog.lua:6
oldQuestsDisplayed = 22
regions = <table> {
1 = Texture {
}
2 = Texture {
}
3 = Texture {
}
4 = QuestLogTitleText {
}
}
xOffsets = <table> {
Right = 515
Left = 3
Middle = 259
}
yOffsets = <table> {
Top = 0
Bot = -256
}
textures = <table> {
TopLeft = "Interface\AddOns\WideQuestLog\Icons\DW_TopLeft"
TopMiddle = "Interface\AddOns\WideQuestLog\Icons\DW_TopMid"
TopRight = "Interface\AddOns\WideQuestLog\Icons\DW_TopRight"
BotLeft = "Interface\AddOns\WideQuestLog\Icons\DW_BotLeft"
BotMiddle = "Interface\AddOns\WideQuestLog\Icons\DW_BotMid"
BotRight = "Interface\AddOns\WideQuestLog\Icons\DW_BotRight"
}
PATTERN = "^Interface\QuestFrame\UI%-QuestLog%-(([A-Z][a-z]+)([A-Z][a-z]+))$"
(for generator) = <function> defined =[C]:-1
(for state) = <table> {
1 = Texture {
}
2 = Texture {
}
3 = Texture {
}
4 = QuestLogTitleText {
}
}
(for control) = 1
_ = 1
region = Texture {
0 = <userdata>
}
texturefile = 136797
(*temporary) = Texture {
0 = <userdata>
}
(*temporary) = 136797
(*temporary) = true
(*temporary) = "QuestLogTitle39"
(*temporary) = <function> defined =[C]:-1
(*temporary) = QuestLogTitle39Check {
0 = <userdata>
}
(*temporary) = "LEFT"
(*temporary) = "QuestLogTitle39NormalText"
(*temporary) = "RIGHT"
(*temporary) = 2
(*temporary) = 0
(*temporary) = QuestLogTitle39NormalText {
0 = <userdata>
}
(*temporary) = <userdata>
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'texturefile' (a number value)"
It looks like something changed with the return value for GetTexture???