View Single Post
10-29-16, 02:47 PM   #2
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
  1. Disable all other addons.
  2. Run "/taintlog 2".
  3. Wait until you get the error.
  4. Log out (don't /reload or you'll wipe the log for the new session).
  5. Open the "World of Warcraft/Logs/taint.log" file in Notepad.
  6. Find the line containing a word like "block" or "protect" (I don't remember exactly what it says).
  7. Note the variable it's saying is tainted.
  8. Work you way back up toward the beginning of the log to see where/how that variable was originally tainted.

If it's your addon:
  • Make sure you are not leaking any global variables.
  • Make sure any intentional global variables have unique names.
  • Don't overwrite any methods on secure frames (eg. frame.Hide).
  • Don't overwrite/modify any globals that are read by secure code (eg. RAID_CLASS_COLORS).
  • Use hooksecurefunc instead of "manual" hooks on Blizz functions that might touch anything secure.

The wrong addon can be blamed for any number of reasons, all of which basically boil down to "whoever touched it (or looked at it sideways, or was seen in the general vicinity of it) last gets all the blame".
__________________
Retired author of too many addons.
Message me if you're interested in taking over one of my addons.
Don’t message me about addon bugs or programming questions.
  Reply With Quote