Massive amount of protected function calling
Opened this issue ยท 27 comments
This seems to happen whenever I melee a mob. Given that the root is in FrameXML, it must be some trigger of Blizzard's doing. However, it seems to be blaming protected calls on Dominos, and I don't know why. Perhaps you would have a better guess than me. The exact code that is causing this is http://wow.go-hero.net/framexml/15005/ActionButton.lua#231 (FrameXML/ActionButton.lua)
It happens for DominosActionButton[1-60], VehicleMenuBarActionButton[1-6], BonusActionButton[1-12], MultiCastActionButton[1-12], and MultiBarLeftButton[11-12]. I'm guessing it affected every single action button, though.
Sometimes it comes from FrameXML\ActionButton.lua:259 (:Hide()), and sometimes from FrameXML\ActionButton.lua:246 (:Show())
3x [ADDON_ACTION_BLOCKED] AddOn "Dominos" tried to call the protected function "DominosActionButton60:Hide()".
!BugGrabber-r181\BugGrabber.lua:338: in function <!BugGrabber\BugGrabber.lua:312>
!BugGrabber-r181\BugGrabber.lua:538: in function "?"
!BugGrabber-r181\BugGrabber.lua:541: in function <!BugGrabber\BugGrabber.lua:541>
FrameXML\ActionButton.lua:259: in function "ActionButton_Update"
FrameXML\ActionButton.lua:484: in function "ActionButton_OnEvent"
FrameXML\ActionButton.lua:105: in function <FrameXML\ActionButton.lua:98>
Locals:
nil
Just looked at ActionButton.lua and saw that the stack is coming from the event handle for PLAYER_ENTERING_WORLD and UPDATE_SHAPESHIFT_FORM. Neither of these make sense, because I am a hunter, not a druid, and I most certainly wasn't ENTERING_WORLD when this happened, but looking at an event trace, it came from a UPDATE_SHAPESHIFT_FORM, which is strange that that would fire at all for a hunter. Nonetheless, there is something strange going on here.
IIRC UPDATE_SHAPESHIFT_FORM is used to report Aspect-related changes (because of the aspect bar is handled ny the same code than the shapeshift form bar).
Anyway I have got the same issue but the client was blaming ACP, i.e. Addon Control Panel, that surely does nothing to any action button. I am not sure what happens there but it looks like some client bug.
Maybe it's one of the library that is tainting something.
In my case, LibInternalCooldowns-1.0 gets blame. ex.
12/3 11:41:11.921 An action was blocked in combat because of taint from LibInternalCooldowns-1.0 - DominosActionButton1:Hide()
12/3 11:41:11.921 Interface\FrameXML\ActionButton.lua:259
12/3 11:41:11.921 ActionButton_Update()
12/3 11:41:11.921 Interface\FrameXML\ActionButton.lua:484 ActionButton_OnEvent()
12/3 11:41:11.921 Interface\FrameXML\ActionButton.lua:105
Could it be related to this : http://us.battle.net/wow/en/forum/topic/1568016398#6 ?
I did make a couple of adjustments in the latest version to remove some taint, did that happen to help any?
Still happenning with 4.3.3.
However, I am starting to thinking like laotseu: I disabled LibInternalCooldowns-1.0 and these errors stopped to happen. LibInternalCooldowns-1.0 is raw-hooking GetActionCooldown, it is possible it eventually taints the rest of the button.
For the record, I also removed LibInternalCooldown from my setup and I'm no longer experimenting the taint bug.
I'm at the office so I can't verify but I update to the latest alpha on Curse everyday.
I don't have Lib-ICD installed or embedded with anything, but I will do some searching and see if i can figure out what else might be tainting.
Check in your taint.log for " An action was blocked in combat because of taint from" lines and mention of Dominos, that should tel you what was causing the taint. LibICD might not be the only one misbehaving.
taint.log is only giving me what BugGrabber was able to give me:
12/6 16:36:03.973 An action was blocked in combat because of taint from Dominos - BonusActionButton7:Show()
12/6 16:36:03.973 Interface\FrameXML\ActionButton.lua:246 ActionButton_Update()
12/6 16:36:03.973 Interface\FrameXML\ActionButton.lua:484 ActionButton_OnEvent()
12/6 16:36:03.973 Interface\FrameXML\ActionButton.lua:105
I've now disabled every single addon except Dominos and I am still getting taint. I'm really not sure what the problem is now at all.
Is that the exact taint you're getting? Because if so, I don't actually use the BonusActionButtons
Yeah, it is. But is occurring for more than just the BonusActionButtons. Here is my taint.log after logging in and hitting a training dummy on my hunter: http://pastebin.com/7WqDkbRP
My saved variables, for fun: http://pastebin.com/j3CCDkhZ
I this may be the function causing issues... It's one of the few instances where the default code could hide the buttons. There may be a few others. http://wow.go-hero.net/framexml/15005/ActionButton.lua#231
On the other hand, one of Inline Aura tester had this kind of error using Inline Aura alone... This just seems to be a random taint error.
I keep getting spammed by Dominos :Show/:Hide spam, too.
12/14 18:20:52.650 An action was blocked in combat because of taint from Dominos - MultiCastActionButton3:Hide() 12/14 18:20:52.650 Interface\FrameXML\ActionButton.lua:259 12/14 18:20:52.650 ActionButton_Update() 12/14 18:20:52.650 Interface\FrameXML\ActionButton.lua:484 ActionButton_OnEvent() 12/14 18:20:52.650 Interface\FrameXML\ActionButton.lua:105
This happens to many many action buttons and fills the taint.log easily with hundreds of lines (no kidding!) :( It seems Blizzard messed up big time now as quite a few addons have these issues. Among them BasicChatmods and Altoholic which both have tickets regarding this issue already.
One possible theory is UIDropDownMenu creating taints and carrying them further than expected, but I suppose there's other "leaks" as well >.<
It's hard to point to one reason in particular. I got rid of LibInternalCooldown and it helped but then Altaholic started to give me the issue when raiding--mostly with Shadowded Unit Frame, not Dominos. I'va hacked my local copy of Altaholic to replace all the hooks with secure hooks and I no longer have the issue.
My guess at this point is tha some functions that are wildly hook to are now use by the unit frame somewhere causing the taint. I'm looking at you, GameTooltip!
Anyways, those are just guesses and observation so far.
Laotseu, if you would post your changes to Altoholic, that might also help (though not Dominos, but many users) - http://wow.curseforge.com/addons/altoholic/tickets/498-the-long-standing-taint-issue/.
I think it has something to do with secure frames. Even my own unit-frames addon get's this issue. And since both eht unit-frames addon and Dominos use secure frames to build stuff, I'm pretty sure it's something to do with the secure frame template...
I had every intention to post the Altaholic hack but I didn't have time to do so before going away for the hollidays. I'll be back home January 6, you can expect the post at that time.
After modifying one of my addons to no longer use the "ActionBarButtonCodeTemplate", I've not had this issue with it. I'm thinking the taint leak somehow involves the template.
Hey,
I can't tell you if it is as I'm on a Mac ... And unfortunately, Blizzard messed things up so hardly any addon works properly on Mac pandaria beta :(
Am 08.07.2012 um 21:23 schrieb Jason Greer:
So is this still an issue? I don't think I've reproduced it in the beta.
Reply to this email directly or view it on GitHub:
#79 (comment)
I've not had this issue on live in a very long time. I believe it was something Blizzard bugged up, and has since corrected.
Well then I'd suggest closing this issue, and if it happens again I'll reopen it.
Thanks for caring :)
Am 08.07.2012 um 22:56 schrieb Goranaws:
I've not had this issue on live in a very long time. I believe it was something Blizzard bugged up, and has since corrected.
Reply to this email directly or view it on GitHub:
#79 (comment)