kemayo / wow-silverdragon

World of Warcraft addon to find rare mobs
24 stars 11 forks source link

Removing a mob from the ignore list freezes the game #75

Closed zerbiniandrea closed 3 years ago

zerbiniandrea commented 3 years ago

When I'm trying to remove a mob from the Ignore list image

the game freezes for 10/20 seconds, then the options for the addon stop working until I reload (or launch again the game).

image

I fixed this problem temporarily by removing a lot of entries from the Ignore list, enabling them in every expansion menu

kemayo commented 3 years ago

Are there no lua errors thrown when this happens?

kemayo commented 3 years ago

I will say that I don't observe this happening myself, so I probably need more information before I can fix it.

zerbiniandrea commented 3 years ago

It happens only when the ignore list is really long. I've ignored all BfA mobs by going into every zone and clicking "none", instead of checking "Ignore" for BfA, and I see a small freeze but then everything works. When I increase the number of ignored mobs (always by clicking on "None"), the game starts freezing for longer periods untill the menu disappears (I've replicated it by ignoring all mobs for every zone of BfA, TBC, Cata and Legion).

When I click on Ignore I also get a small freeze. Opening it with ElvUI enabled gives this LUA error:

Message: TexCoord out of range
Time: Fri Oct 30 11:35:18 2020
Count: 1
Stack: TexCoord out of range
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "=[C]"]: in function `SetTexCoord'
[string "@Interface\SharedXML\Backdrop.lua"]:261: in function <Interface\SharedXML\Backdrop.lua:260>
[string "@Interface\SharedXML\Backdrop.lua"]:293: in function `SetupTextureCoordinates'
[string "@Interface\SharedXML\Backdrop.lua"]:237: in function <Interface\SharedXML\Backdrop.lua:235>

Locals: 

Disabling ElvUI removes the LUA error but the freeze happens anyways.

When I'm trying to remove a mob from the ignore list I'm getting 4 different Lua errors and then the menu disappears (as the second picture in the previous post). The 4 Lua errors are referring to other addons (the 1st one I'm getting is for AngryAssignments). When I disable that addon, I get the same 4 errors but with a different addon (AddonSkins, Gathermate and so on). Disabling everything except for SilverDragon gives these 4 errors:

Message: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
Time: Fri Oct 30 11:50:18 2020
Count: 1
Stack: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:432: in function `PerformLayout'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:437: in function `DoLayout'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:458: in function `AddChild'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1463: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1117>
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1144: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1117>
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1648: in function `FeedGroup'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1573: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1557>
[string "=[C]"]: ?
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TabGroup.lua"]:156: in function `SelectTab'
...
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua"]:526: in function `Select'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua"]:534: in function `SelectByValue'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1744: in function `FeedGroup'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1928: in function `Open'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:875: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:664>
[string "=[C]"]: ?
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua"]:68: in function <...gon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua:57>

Locals: <none>
Message: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
Time: Fri Oct 30 11:50:18 2020
Count: 1
Stack: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:432: in function `PerformLayout'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:437: in function `DoLayout'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:458: in function `AddChild'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1463: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1117>
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1144: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1117>
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1648: in function `FeedGroup'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1573: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1557>
[string "=[C]"]: ?
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TabGroup.lua"]:156: in function `SelectTab'
...
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua"]:526: in function `Select'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua"]:534: in function `SelectByValue'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1744: in function `FeedGroup'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1928: in function `Open'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:875: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:664>
[string "=[C]"]: ?
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua"]:68: in function <...gon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua:57>

Locals: <none>
Message: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
Time: Fri Oct 30 11:50:18 2020
Count: 1
Stack: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:432: in function `PerformLayout'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:437: in function `DoLayout'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:458: in function `AddChild'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1463: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1117>
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1144: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1117>
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1648: in function `FeedGroup'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1573: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1557>
[string "=[C]"]: ?
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TabGroup.lua"]:156: in function `SelectTab'
...
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua"]:526: in function `Select'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua"]:534: in function `SelectByValue'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1744: in function `FeedGroup'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:1928: in function `Open'
[string "@Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua"]:875: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:664>
[string "=[C]"]: ?
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua"]:68: in function <...gon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua:57>

Locals: <none>
Message: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
Time: Fri Oct 30 11:50:18 2020
Count: 1
Stack: ...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:72: script ran too long
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:72: in function <...ce\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:70>
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua"]:306: in function `Fire'
[string "@Interface\AddOns\SilverDragon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua"]:68: in function <...gon\lib\AceGUI-3.0\widgets\AceGUIWidget-CheckBox.lua:57>

Locals: func = <function> defined @Interface\AddOns\SilverDragon\lib\AceConfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:664
(*temporary) = false
(*temporary) = nil
(*temporary) = "script ran too long"
xpcall = <function> defined =[C]:-1
errorhandler = <function> defined @Interface\AddOns\SilverDragon\lib\AceGUI-3.0\AceGUI-3.0.lua:66

I hope this helps!

kemayo commented 3 years ago

This seems to be an AceConfig issue with toggles that're set to be full-width. I can tweak that.

kemayo commented 3 years ago

Okay, did this in 4fc549795bc0d5474cf717068ad0a5c5029ca9ed. Could you check out the new alpha and see whether it's fixed for you?

zerbiniandrea commented 3 years ago

It's a lot better. When I open the Ignore menu now the game freezes for 1 second or less, but it still gives a Lua error:

Time: Fri Oct 30 21:00:57 2020
Count: 1
Stack: TexCoord out of range
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "=[C]"]: in function `SetTexCoord'
[string "@Interface\SharedXML\Backdrop.lua"]:261: in function <Interface\SharedXML\Backdrop.lua:260>
[string "@Interface\SharedXML\Backdrop.lua"]:293: in function `SetupTextureCoordinates'
[string "@Interface\SharedXML\Backdrop.lua"]:237: in function <Interface\SharedXML\Backdrop.lua:235>

Locals: 

I'm also getting the same Lua error every other mob I'm trying to remove from the ignore list (the 1st works, the 2nd gives the error, 3rd works, 4th gets the error and so on). I'm posting also that one, in case I've missed something different from the one I'm getting when opening the ignore list.

Time: Fri Oct 30 21:04:15 2020
Count: 5
Stack: TexCoord out of range
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "=[C]"]: in function `SetTexCoord'
[string "@Interface\SharedXML\Backdrop.lua"]:261: in function <Interface\SharedXML\Backdrop.lua:260>
[string "@Interface\SharedXML\Backdrop.lua"]:293: in function `SetupTextureCoordinates'
[string "@Interface\SharedXML\Backdrop.lua"]:237: in function <Interface\SharedXML\Backdrop.lua:235>

Locals: 

The menu is now working fine (when removing a mob from the list, and the game freezes for less than 1 second every time I remove one mob; I guess that's just because there are basically hundreds of entries.

EDIT: With the alpha version I'm getting errors from AddOnSkins that I didn't get before but I guess it's more on their fault. Just disabling SilverDragon from AddOnSkins fixes it, and it doesn't really need AddonSkins since it works fine with ElvUI.

kemayo commented 3 years ago

I'm inclined to say that's an ElvUI issue. Does that initial freeze go away as well if you disable it?

zerbiniandrea commented 3 years ago

Yep, disabling ElvUI fixes both the initial freeze and the Lua errors. It's mostly fine with ElvUI enabled anyways, it went down from a 20 seconds freeze to 1 second or less.