Cidan / BetterBags

A total replacement AddOn for World of Warcraft bag frames, inspired by AdiBags.
MIT License
89 stars 39 forks source link

Script ran to long #310

Closed SebastianJWolf closed 6 months ago

SebastianJWolf commented 7 months ago

Addon Version

0.1.14

World of Warcraft Version

Retail

Describe the bug

Bag did not render properly and reloading ui fixed it. This occurred after porting from the Nine in Sanctum of Domination to my Garrison.

1x BetterBags/frames/item.lua:190: script ran too long [string "@BetterBags/frames/item.lua"]:190: in function Unlock' [string "@BetterBags/frames/item.lua"]:169: in functionSetLock' [string "@BetterBags/frames/item.lua"]:261: in function SetItem' [string "@BetterBags/views/gridview.lua"]:87: in functionRender' [string "@BetterBags/frames/bag.lua"]:218: in function Draw' [string "@BetterBags/core/init.lua"]:141: in functioncb' [string "@BetterBags/core/events.lua"]:45: in function <BetterBags/core/events.lua:40>

[string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...ings/lib/CallbackHandler-1.0/CallbackHandler-1.0.lua:15> [string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `SendMessage' [string "@BetterBags/core/events.lua"]:148: in function <BetterBags/core/events.lua:147>

Locals: self =

{ NormalTexture = BetterBagsItemButton500NormalTexture { } Stock = BetterBagsItemButton500Stock { } kind = 0 LockTexture = BetterBagsItemButton500LockButton { } IconOverlay = Texture { } isFreeSlot = false data =
{ } __bb_elvui_skin = true ilvlText = FontString { } Count = BetterBagsItemButton500Count { } button = BetterBagsItemButton500 { } IconQuestTexture = BetterBagsItemButton500IconQuestTexture { } frame = BetterBagsItemButton500parent { } Cooldown = BetterBagsItemButton500Cooldown { } IconTexture = BetterBagsItemButton500IconTexture { } } itemLocation =
{ Clear = defined @FrameXML/ObjectAPI/ItemLocation.lua:29 IsEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:56 IsEqualToBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:72 SetBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:35 IsBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:60 SetEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:46 slotIndex = 24 HasAnyLocation = defined @FrameXML/ObjectAPI/ItemLocation.lua:64 bagID = 5 GetEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:52 IsEqualToEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:80 GetBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:42 IsValid = defined @FrameXML/ObjectAPI/ItemLocation.lua:68 IsEqualTo = defined @FrameXML/ObjectAPI/ItemLocation.lua:88 } (temporary) = defined =[C]:-1 (temporary) =
{ Clear = defined @FrameXML/ObjectAPI/ItemLocation.lua:29 IsEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:56 IsEqualToBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:72 SetBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:35 IsBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:60 SetEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:46 slotIndex = 24 HasAnyLocation = defined @FrameXML/ObjectAPI/ItemLocation.lua:64 bagID = 5 GetEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:52 IsEqualToEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:80 GetBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:42 IsValid = defined @FrameXML/ObjectAPI/ItemLocation.lua:68 IsEqualTo = defined @FrameXML/ObjectAPI/ItemLocation.lua:88 } (temporary) = 24 (temporary) =
{ Clear = defined @FrameXML/ObjectAPI/ItemLocation.lua:29 IsEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:56 IsEqualToBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:72 SetBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:35 IsBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:60 SetEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:46 slotIndex = 24 HasAnyLocation = defined @FrameXML/ObjectAPI/ItemLocation.lua:64 bagID = 5 GetEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:52 IsEqualToEquipmentSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:80 GetBagAndSlot = defined @FrameXML/ObjectAPI/ItemLocation.lua:42 IsValid = defined @FrameXML/ObjectAPI/ItemLocation.lua:68 IsEqualTo = defined @FrameXML/ObjectAPI/ItemLocation.lua:88 } (*temporary) = "script ran too long" database =
{ SetDefaultModuleLibraries = defined @ElvUI_Libraries/Core/Ace3/AceAddon-3.

Better Bags bug

Steps to reproduce

As it happened immediately after hearthing to my Garrison unsure if there is a way to reproduce. May be related to closing and opening my bag as I was hearthing.

SebastianJWolf commented 7 months ago

Ran into the same issues hearthing back to my garrison from N'zoth this time

1x BetterBags/frames/item.lua:266: script ran too long [string "@BetterBags/frames/item.lua"]:266: in function SetItem' [string "@BetterBags/views/gridview.lua"]:87: in functionRender' [string "@BetterBags/frames/bag.lua"]:218: in function Draw' [string "@BetterBags/core/init.lua"]:141: in functioncb' [string "@BetterBags/core/events.lua"]:45: in function <BetterBags/core/events.lua:40>

[string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...ings/lib/CallbackHandler-1.0/CallbackHandler-1.0.lua:15> [string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `SendMessage' [string "@BetterBags/core/events.lua"]:148: in function <BetterBags/core/events.lua:147>

Locals: self =

{ NormalTexture = BetterBagsItemButton470NormalTexture { } Stock = BetterBagsItemButton470Stock { } kind = 0 LockTexture = BetterBagsItemButton470LockButton { } IconOverlay = Texture { } isFreeSlot = false data =
{ } __bb_elvui_skin = true ilvlText = FontString { } Count = BetterBagsItemButton470Count { } button = BetterBagsItemButton470 { } IconQuestTexture = BetterBagsItemButton470IconQuestTexture { } frame = BetterBagsItemButton470parent { } Cooldown = BetterBagsItemButton470Cooldown { } IconTexture = BetterBagsItemButton470IconTexture { } } data =
{ isItemEmpty = false containerInfo =
{ } slotid = 18 basic = false questInfo =
{ } kind = 0 itemInfo =
{ } bagid = 5 } tooltipOwner = nil bagid = 5 slotid = 18 questInfo =
{ isQuestItem = false isActive = false } info =
{ itemName = "Rousing Decay" hasLoot = false hyperlink = "|cff0070dd|Hitem:190330::::::::70:263:::::::::|h[Rousing Decay]|h|r" iconFileID = 4554446 hasNoValue = false isLocked = false itemID = 190330 isBound = false stackCount = 13 isFiltered = false isReadable = false quality = 3 } readable = false isFiltered = false noValue = false isQuestItem = false questID = nil isActive = false bound = false (*temporary) = BetterBagsItemButton470 { BottomLeftCorner = Texture { } SetItem = defined @FrameXML/ItemButtonTemplate.lua:544 IconOverlay = Texture { } SetAlpha = defined @FrameXML/ItemButtonTemplate.lua:631 GetBackdropColor = defined @SharedXML/Backdrop.lua:390 ItemSlotBackground = Texture { } showMatchHighlight = true flashAnim = AnimationGroup { } RightEdge = Texture { } isExtended = false SetReadable = defined @FrameXML/ContainerFrame.lua:1700 UpdateNewItem = defined @FrameXML/ContainerFrame.lua:1646 ClearBackdrop = defined @SharedXML/Backdrop.lua:282 count = 13 PostOnHide = defined @FrameXML/ItemButtonTemplate.lua:423 NewItemTexture = Texture { } PostOnEvent = defined @FrameXML/ItemButtonTemplate.lua:427 UpdateQuestItem = defined @FrameXML/ContainerFrame.lua:1634 HasBackdropInfo = defined @SharedXML/Backdrop.lua:278 IsExtended = defined @FrameXML/ContainerFrame.lua:1738 UpdateItemContextOverlay = defined @FrameXML/ItemButtonTemplate.lua:488 CheckForTutorials = defined @FrameXML/ContainerFrame.lua:1768 TopEdge = Texture { } emptyBackgroundAtlas = "bags-item-slot64" Count = BetterBagsItemButton470Count { } SetItemButtonAnchorPoint = defined @FrameXML/ItemButtonTemplate.lua:618 SetBackdropColor = defined @BetterBagsElvUISkin/util/misc.lua:3 LeftEdge = Texture { } NormalTexture = BetterBagsItemButton470NormalTexture { } minDisplayCount = 1 OnItemContextChanged = defined @FrameXML/ItemButtonTemplate.lua:410 UpdateJunkItem = defined @FrameXML/ContainerFrame.lua:1678 HasItem = defined @FrameXML/ContainerFrame.lua:1696 OnClick = defined @FrameXML/ContainerFrame.lua:1467 pushed = Texture { } SetItemButtonScale = defined @FrameXML/ItemButtonTemplate.lua:623 isCraftedItem = false isProfessionItem = false Cooldown = BetterBagsItemButton470Cooldown { } SetBorderBlendMode = defined @SharedXML/Backdrop.lua:266 GetSlotAndBagID = defined @FrameXML/ContainerFrame.lua:1611 GetItemID = defined @FrameXML/ItemButtonTemplate.lua:591 RegisterBagButtonUpdateItemContextMatching = defined @FrameXML/ItemButtonTemplate.lua:657 BagIndicator = Texture { } Stock = BetterBagsItemButton470Stock { } GetItemLink = defined @FrameXML/ItemButtonTemplate.lua:606 GetItemInfo = defined

SebastianJWolf commented 7 months ago

Happened again hearthing to my Garrison

2x BetterBags/frames/grid.lua:140: script ran too long [string "@BetterBags/frames/grid.lua"]:140: in function Sort' [string "@BetterBags/views/gridview.lua"]:187: in functionRender' [string "@BetterBags/frames/bag.lua"]:218: in function Draw' [string "@BetterBags/core/init.lua"]:141: in functioncb' [string "@BetterBags/core/events.lua"]:45: in function <BetterBags/core/events.lua:40>

[string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...ings/lib/CallbackHandler-1.0/CallbackHandler-1.0.lua:15> [string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `SendMessage' [string "@BetterBags/core/events.lua"]:148: in function <BetterBags/core/events.lua:147>

Locals: (temporary) =

{ view =
{ } columns =
{ } cellToColumn =
{ } spacing = 4 cells =
{ } maxCellWidth = 1 box = BetterBagsScrollGrid1 { } headers =
{ } __bb_elvui_skin = true idToCell =
{ } compactStyle = 1 inner = Frame { } frame = BetterBagsScrollGrid1 { } cellToID =
{ } bar = Frame { } } (temporary) = defined @BetterBags/util/sort.lua:72 (temporary) = defined =[C]:-1 (temporary) =
{ 1 =
{ } 2 =
{ } 3 =
{ } 4 =
{ } 5 =
{ } 6 =
{ } 7 =
{ } 8 =
{ } 9 =
{ } 10 =
{ } 11 =
{ } 12 =
{ } 13 =
{ } 14 =
{ } 15 =
{ } 16 =
{ } 17 =
{ } 18 =
{ } 19 =
{ } 20 =
{ } 21 =
{ } 22 =
{ } 23 =
{ } 24 =
{ } 25 =
{ } 26 =
{ } 27 =
{ } 28 =
{ } 29 =
{ } 30 =
{ } 31 =
{ } 32 =
{ } 33 =
{ } 34 =
{ } 35 =
{ } 36 =
{ } 37 =
{ } 38 =
{ } 39 =
{ } 40 =
{ } 41 =
{ } 42 =
{ } 43 =
{ } 44 =
{ } 45 =
{ } 46 =
{ } 47 =
{ } 48 =
{ } 49 =
{ } 50 =
{ } 51 =
{ } 52 =
{ } 53 =
{ } 54 =
{ } 55 =
{ } 56 =
{ } 57 =
{ } 58 =
{ } 59 =
{ } 60 =
{ } 61 =
{ } 62 =
{ } 63 =
{ } 64 =
{ } 65 =
{ } 66 =
{ } 67 =
{ } 68 =
{ } } (temporary) = defined @BetterBags/util/sort.lua:72 (temporary) = "script ran too long"

Cidan commented 7 months ago

This is fixed in the latest alpha, with a TBD release date due to some other outstanding bugs. You can install the current Alpha from curse.