[Bug] CollectionsJournal:SetPoint(): Wrong object type in MoveFrames.lua (line 405)
Shade-ui opened this issue · 1 comments
Message: CollectionsJournal:SetPoint(): Wrong object type for function
Time: Thu Jul 10 23:13:17 2025
Count: 1
Stack:
[Interface/AddOns/ElvUI_WindTools/Modules/Misc/MoveFrames.lua]:405: in function <...e/AddOns/ElvUI_WindTools/Modules/Misc/MoveFrames.lua:387>
[tail call]: ?
[C]: in function 'SetPoint'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:636: in function 'UpdateUIPanelPositions'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:181: in function <...ParentPanelManager/Mainline/UIParentPanelManager.lua:169>
[C]: in function 'SetAttribute'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:1157: in function <...ParentPanelManager/Mainline/UIParentPanelManager.lua:1155>
[C]: in function 'securecall'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:490: in function 'SetUIPanel'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:337: in function 'ShowUIPanel'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:174: in function <...ParentPanelManager/Mainline/UIParentPanelManager.lua:169>
[C]: in function 'SetAttribute'
[Interface/AddOns/Blizzard_UIParentPanelManager/Mainline/UIParentPanelManager.lua]:894: in function 'ShowUIPanel'
[Interface/AddOns/Blizzard_UIParent/Mainline/UIParent.lua]:1037: in function 'SetCollectionsJournalShown'
[Interface/AddOns/Blizzard_UIParent/Mainline/UIParent.lua]:1021: in function 'ToggleCollectionsJournal'
[TOGGLECOLLECTIONS]:1: in function <[string "TOGGLECOLLECTIONS"]:1>
Locals:
self =
modules =
}
defaultModuleLibraries =
}
hooks =
}
name = "ElvUI_WindTools_MoveFrames"
orderedModules =
}
baseName = "ElvUI_WindTools"
db =
}
enabledState = true
defaultModuleState = true
moduleName = "MoveFrames"
}
frame = CollectionsJournal {
ToysTab = CollectionsJournalTab3 {
}
PetsTab = CollectionsJournalTab2 {
}
MountsTab = CollectionsJournalTab1 {
}
Tabs =
}
HeirloomsTab = CollectionsJournalTab4 {
}
layoutType = "PortraitFrameTemplate"
PortraitContainer = Frame {
}
Bg = CollectionsJournalBg {
}
NineSlice = Frame {
}
TopTileStreaks = Texture {
}
__windFramePath = "CollectionsJournal"
WardrobeTab = CollectionsJournalTab5 {
}
TitleContainer = Frame {
}
CloseButton = CollectionsJournalCloseButton {
}
backdrop = Frame {
}
MoveFrame = CollectionsJournal {
}
numTabs = 6
WarbandScenesTab = CollectionsJournalTab6 {
}
selectedTab = 3
}
anchorPoint = "TOPLEFT"
relativeFrame = "UIParent"
relativePoint = "TOPLEFT"
offX = 16
offY = -116
skip = nil
path = "CollectionsJournal"
(for state) =
1 =
}
}
(for control) = 1
_ = 1
point =
anchorPoint = "TOPLEFT"
relativeFrame =
}
offY = -116.000008
offX = 16
relativePoint = "TOPLEFT"
}
ignorePositionRememberingFrames =
BonusRollFrame = true
}
The error originates from:
ElvUI_WindTools/Modules/Misc/MoveFrames.lua:405
It seems the function frame:SetPoint() receives relativeFrame as a string ("UIParent") instead of a valid frame object. This causes a type mismatch.
To Reproduce
Steps to reproduce the behavior:
- Log in with ElvUI and ElvUI_WindTools enabled.
- Press
Shift + Pto open the Collections window. - Observe the Lua error.
Expected behavior
The CollectionsJournal frame should open normally without triggering any Lua errors. WindTools should reposition the frame without breaking the UI.
Screenshots
Not applicable – pure Lua error in the console.
Information
You can find these in [WindTools-Information]:
- Addon Version: [e.g. 3.98]
- ElvUI Version: [e.g. 14.65]
- WoW Build: [e.g. 10.2.7 (55172)]
Additional context
The error occurs when MoveFrames.lua attempts to reposition the CollectionsJournal using SetPoint() with a string ("UIParent") as the relativeFrame. This can likely be fixed by ensuring that relativeFrame is resolved from _G before calling SetPoint().
Suggested Fix:
if type(relativeFrame) == "string" then
relativeFrame = _G[relativeFrame]
end
Please advise if a temporary local fix is recommended or if a patch is in progress. Thank you for your work!