stack overflow [string "=[C]"]: in function `GetChildren'
Quartzfire opened this issue ยท 19 comments
Hi,
I only downloaded this addon yesterday for 11.0.7 (MinimapButtonButton-1.20.5.zip) since other MBB addons are outdated.
I deleted older MBB addons as well as Delete Settings (Saved Variables) and confirmed the folder had disappeared from my addons folder.
It worked ok when first installed and I tested it and then stopped working a short while later. I'm not sure what the trigger for it is.
I thought maybe it was battle pet completionist addon causing some issues, so I disabled that but I still get the same issues.
On one char it let me open the frame, then it gives the lua when I try to close it, on my other char it give the lue when I try to open it.
Please let me know if there is any other information I can provide.
Thanks in advance.
46x stack overflow
[string "=[C]"]: in function `GetChildren'
[string "@MinimapButtonButton/Logic/Main.lua"]:213: in function <MinimapButtonButton/Logic/Main.lua:212>
[string "@MinimapButtonButton/Logic/Main.lua"]:233: in function <MinimapButtonButton/Logic/Main.lua:228>
[string "@MinimapButtonButton/Logic/Main.lua"]:279: in function <MinimapButtonButton/Logic/Main.lua:278>
[string "@MinimapButtonButton/Logic/Main.lua"]:328: in function <MinimapButtonButton/Logic/Main.lua:324>
Locals:
(*temporary) = "stack overflow"
The GetChildren function is a default function to receive the children of a frame, in this case to get all the frames attached to the minimap to "scan" which of them is a minimap button. I honestly have no idea how this function can cause a stack overflow unless some addon is overwriting it with a function that accidentially runs forever, causing a stack overflow. Unfortunately I don't have a better suggestion for now than disabling other addons one by one or in batches to see if you can pinpoint it to a specific addon.
If you want to easily restore what addons you had enabled, you can use this addon (make sure to save a profile before you start disabling addons): https://www.curseforge.com/wow/addons/addonprofiles.
Thanks, will see if I can figure out if I can pinpoint it to another addon causing it.
Update:
Seems to be an addon called "Giuice Hunter Pets", which I also installed recently.
With that addon enabled, if I go from Stormwind to Dornogal and then use MBB it's when the LUA pops up. It's then "broken" after that point.
If I disable the "Giuice Hunter Pets" addon, I can go from Stormwind to Dornogal and back again numerous times and no issue clicking on MBB.
Ref: https://www.curseforge.com/wow/addons/giuice-hunter-pets
Oh and also, reading the comments on curseforge, the maintainer currently cannot upload new versions to curseforge so the version there might be outdated. Maybe the issue is fixed in the latest version on github.
So I had a quick look at the addon and they aren't overriding the GetChildren function. But it looks like they are adding a lot of minimap pins if I saw that correctly. Can you try disabling the "Show Pet Pins on Minimap" option, reload and then see if MBB still has a stack overflow?
Sure, i'll try to disable the minmap options. Funny you say that, when I opened MBB once when I had the addon disabled, I saw about a dozen or so icons of the addon showing in MBB, perhaps that's related to the excessive minimap pins you mentioned.
That sounds really weird, maybe it's a bug and the world map pin option actually controls the minimap pins? Either way it seems the addon is doing weird things that maybe cause performance issue too with adding so many frames to the minimap and/or world map.
Th option for "Show Pet Pins on Minimap" seems ot do nothing for me, I disable it, /reload and it's enabled again, so it appears to not be consistent. I had the same LUA issue with it seemingly enabled or disabled.
I seem to not have the LUA issue when I change the option for "Show Pet Pins on World Map" to Disable Pins.
If you want to check how many frames are attached to the minimap, you can paste this into the chat: /dump #{Minimap:GetChildren()}
. For me it says 37 which includes HandyNotes pins. As this is the same call from your error this might cause a stack overflow with the addon enabled in which case I unfortunately have to suggest using a different addon with that functionality.
Yeah it's quite strange. I'll disable the "Giuice Hunter Pets" addon for now. While it's a nice look and feel for the hunter pets you can't actually change anything, so functionally not very beneficial.
Perhaps of the author changes things I'll try it again, or I might put a link to this ticket on his channel/discord so he can have a look and see if he spots anything that can be done to make things more efficient.
Thanks for taking the time to have a look and respond to me though.
Oh I see. So yeah, when you have the issue you don't get a response because the stack overflow error occurs.
Without the issue you only have 8 frames attached to the minimap and no error occurs.
So the fix is that writer of that addon needs to change something because in all honesty it is kinda crazy that it is creating so many frames that you get a stack overflow when listing them.
It seems you didn't copy the slash at the beginning of the command so it's just getting said as a message.
But also, the error in the screenshot you pasted is from another addon, I assume MinimapButtonBag. But the fact that it has the same error when checking the minimaps children shows that the fault is not in the minimap button addons themselves but too many buttons attached.
Alright, I'm glad that you found a working setup.
I will close this issue then, you can still link it to the author of that addon of course.