OnLoad error when opening collections journal
kemayo opened this issue ยท 2 comments
When I first open the collections UI in a session, I get this error:
12x [string "*:OnLoad"]:4: bad argument #1 to 'pairs' (table expected, got nil)
[string "=[C]"]: in function `pairs'
[string "*:OnLoad"]:4: in function <[string "*:OnLoad"]:1>
[string "=[C]"]: in function `LoadAddOn'
[string "@FrameXML\UIParent.lua"]:508: in function `UIParentLoadAddOn'
[string "@FrameXML\UIParent.lua"]:674: in function `CollectionsJournal_LoadUI'
[string "@FrameXML\UIParent.lua"]:1107: in function `SetCollectionsJournalShown'
[string "@FrameXML\UIParent.lua"]:1101: in function `ToggleCollectionsJournal'
[string "@FrameXML\MainMenuBarMicroButtons.lua"]:1053: in function <FrameXML\MainMenuBarMicroButtons.lua:1051>
[string "=[C]"]: ?
Locals:
(*temporary) = nil
(*temporary) = "table expected, got nil"
= <function> defined =[C]:-1
This seems to boil down to TransmogRoulette.xml
line 184: for _, button in pairs(WardrobeTransmogFrame.ModelScene.SlotButtons) do
, as 9.1. has made WardrobeTransmogFrame.ModelScene.SlotButtons
now be nil... I assume as part of the changes to support the new shoulder separate-transmog option.
Here's a fix. Edit TransmogRoulette.xml
Line 184. Replace
for _, button in pairs(WardrobeTransmogFrame.ModelScene.SlotButtons) do
with
for _, button in pairs(WardrobeTransmogFrame.SlotButtons) do
Lines 217-218 Replace
local transmogLocation = TransmogUtil.GetTransmogLocation(slotID, Enum.TransmogType.Appearance, Enum.TransmogModification.None);
C_Transmog.SetPending(transmogLocation, sourceID, categoryID)
with
local transmogLocation = TransmogUtil.GetTransmogLocation(slotID, Enum.TransmogType.Appearance, Enum.TransmogModification.Main);
pendingInfo = TransmogUtil.CreateTransmogPendingInfo(Enum.TransmogPendingType.Apply, sourceID);
C_Transmog.SetPending(transmogLocation, pendingInfo)
That should do it!
Looks like that was committed in 181615d.