"IsDisabledByParentalControls" taint complaint
My AddOn's been getting a Taint Complaint and I can't figure out why. This started happening with the 5.4.1 patch and I figure Blizz just might have introduced a bug.
The Tracker is a replacement and doesn't hook Blizzard or anything of the like, it just draws its own frame. It doesn't happen with any consistency and I can't make it fail on demand. Earlier today I even had the tracker disabled and then it complained (same taint complaint) but picked on OverAchiever. Does the following give anyone a hint? I'm not even mentioned except in the text. And the AddOn continues to work, just the message pops up. Here is the message that Swatter gives me: Error occured in: AddOn: QuestGuru_Tracker Message: Error: AddOn QuestGuru_Tracker attempted to call a forbidden function (IsDisabledByParentalControls()) from a tainted execution path. Debug: [C]: IsDisabledByParentalControls() ..\FrameXML\MainMenuBarMicroButtons.lua:229: ..\FrameXML\MainMenuBarMicroButtons.lua:76 [C]: UpdateMicroButtons() ..\FrameXML\WorldMapFrame.lua:272: ..\FrameXML\WorldMapFrame.lua:255 [C]: Show() ..\FrameXML\UIParent.lua:1772: SetUIPanel() ..\FrameXML\UIParent.lua:1614: ShowUIPanel() ..\FrameXML\UIParent.lua:1545: ..\FrameXML\UIParent.lua:1541 [C]: SetAttribute() ..\FrameXML\UIParent.lua:2262: ShowUIPanel() ..\FrameXML\UIParent.lua:2246: ToggleFrame() [string "TOGGLEWORLDMAP"]:1: [string "TOGGLEWORLDMAP"]:1 |
|
I'd have to copy this post from wowace, so instead I'll link it.
You'll be able to follow the links to more information. http://forums.wowace.com/showthread....288#post327288 |
I discovered, tonight, that my spellbook no longer opens because of this error. I tried setting taintLog to 1 to just see what the log would say, but it still had the same lack of explanation for the source. So, I changed taintLog to 2. Wow. I'm not sure I'll ever do that again.
They need something halfway between 1 and 2. Right now, at 2, it's showing addon code tainting stuff that the addon code created. While it might be true that all of that stuff is really tainted, it's not really that relevant an observation. What it needs is a mode where taint creeping into anything that was there before addons were loaded is what it logs. Well, I hope I don't need my spellbook anytime soon. |
Here is a temporary fix for it:
Lua Code:
|
Quote:
It only works for frames that contain no secure elements (eg. WorldMapFrame) it will fail on any frame that does (Friends, Raid etc etc) The best generic "fix" at the moment is selectively hiding the error popup as Oscarucb has suggested. Code:
UIParent:HookScript("OnEvent", function(s, e, a1, a2) if e:find("ACTION_FORBIDDEN") and ((a1 or "")..(a2 or "")):find("IsDisabledByParentalControls") then StaticPopup_Hide(e) end; end) |
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Or, in my case, the Spellbook because (I assume) it's being launched from Dominos's menu button strip.
EDIT: And the achievement frame because of Overachiever. |
|
If you'd read the thread you linked, you would already know that there are several undesirable hacks you can use to avoid the error popup (that will break other things in the process), but there is no real way to fix the problem.
|
Is it just me or did they fix this in that last update?
EDIT: They being Blizzard. |
Quote:
|
It may be that I'm silliy enough to maintian a couple of ancient addons and I'm not lua smart enough to spot the flaming obvious. After the last stealth patch that seemed to fix this problem I was still getting the error after opening the options window for "my" addons and then trying to open other in-game windows guild, friends, professions etc.
I tracked the problem down to the TOCs containing the following entries Code:
..\..\FrameXML\Fonts.xml If you find this usefull great, if you find it an excuse to point out how lame I am at coding, enjoy :). |
Why on earth would you ever call FrameXML files from an addon TOC?!?!?!?! All those files are already loaded before the game even thinks about loading addons...
|
Quote:
|
I imagine Fizzle thought that adding files to the ToC is like adding references in .NET or importing on Java, or anything like that :p
It's just for the files in your own addon. |
These entries were already in the TOC files when I got them. The addons in question (DUF and DART) were originally created in vanilla WoW and have been maintained by various people through the ages.
Edit: It's nice to know the answer is "I'm not lua smart enough to spot the flaming obvious AND I'm silliy enough to maintian a couple of ancient addons." :P |
All times are GMT -6. The time now is 06:16 PM. |
vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI