Action is blocked (occasionally)
sheaahhoi1 opened this issue · 2 comments
AdiBags v1.8.3
2.open bag
UI interface using items such as: box (occasional)
Blizzard UI:Action is blocked (occasionally)
Translation:插件=UI,嘗試調用保護功能=Try calling Protection
BugSack:
1x [ADDON_ACTION_FORBIDDEN] 插件 'AdiBags' 嘗試調用保護功能 'UseContainerItem()'。
!BugGrabber\BugGrabber.lua:589: in function <!BugGrabber\BugGrabber.lua:589>
[C]: in function UseContainerItem' FrameXML\ContainerFrame.lua:1004: in function
ContainerFrameItemButton_OnClick'
[string ":OnClick"]:12: in function <[string ":OnClick"]:1>
Locals:
nil
I've been trying to track down this bug, but so far all I could figure out is a simple test case.
Start: Only adibags enabled, hunter, one bow equipped, different bow in bags, target dummy nearby.
Step 1: /reload ui
Step 2: right click target dummy to start auto-attack and enter combat
Step 3: open bags
Step 4: right click the bow in bag
On my PC, this results in the error in 100% of attempts.
As a side note, I have randomly encountered the bug many times, but only ever in combat. Never out of combat.
Soooo... after few hours staring into the code, I had an epiphany and searched for mentions of something that's different in combat (should have been obvious in retrospect).
The issue seems to be at widgets/ItemButton.lua:161
As the comment notes, buttons created in combat do not work well. However, the number of pre-spawned buttons is way too low, as the hunter I've conducted above test with does have much more than 100 unique items in his bags. Increasing the value to something like 1000 solves the issue for me so far.
I suspect a more reliable fix would be to prevent creation of new buttons in combat altogether.