12/12 03:33:34.282 An action was blocked because of taint from Ace2 - orig()
I would find which addon is using Ace2 to interfere with static popups. Maybe just disable Ace2 at the character load screen and see what other addons become disabled. Or grep through the addon folders to see if any of your other addons have ace2 embedded.
Once you know which addon is involved, debugging can proceed from there.
I still have some Ace2 addons myself and have never had a problem logging out, so it's not going to be Ace2 itself that's the problem. The way Blizzard taint tracking works, libraries end up getting blamed for everything that *any* of their client addons do.
Is there a known solution? If so, does it involve a lot of recoding or is it a quick, one-line fix?
Unfortunately, a couple of very popular mods I use still rely on Ace2. Is it up to the author of these mods then to move everything to Ace3? Is there something in Ace2 that isn't in Ace3 that would prevent mod authors from moving to Ace3 entirely?
For most addons, no, there is nothing in Ace2 that would prevent authors from migrating to Ace3. Mostly it's just author laziness ("Ace2 still works so I don't want to spend my time rewriting my addon to not use it"), lack of time ("I don't have much time and since Ace2 still works I'd rather spend the time I do have on more fun/productive things"), or simply the fact that the addon is no longer maintained.
For a few addons, there is the problem of AceOO, which has no non-Ace2 equivalent and makes "upgrading" addons that depend on it a major undertaking.
Which specific addons do you have that use Ace2? I have several, and have never had any problems.
For most addons, no, there is nothing in Ace2 that would prevent authors from migrating to Ace3. Mostly it's just author laziness ("Ace2 still works so I don't want to spend my time rewriting my addon to not use it"), lack of time ("I don't have much time and since Ace2 still works I'd rather spend the time I do have on more fun/productive things"), or simply the fact that the addon is no longer maintained.
For a few addons, there is the problem of AceOO, which has no non-Ace2 equivalent and makes "upgrading" addons that depend on it a major undertaking.
Which specific addons do you have that use Ace2? I have several, and have never had any problems.
I have the Curse Client install libraries separate from addons, so I can't tell you quickly what mods I use that still rely on Ace2. I could come up with a list at some point.
I know, for one, AtlasLoot still uses Ace2. I believe ArkInventory also still relies on Ace2.
I don't know what exactly I was doing when I got this Ace2 error. I had BugSack installed so I am able to at least track LUA/taint errors easily.
AtlasLoot does not use Ace2; it does, however, use Dewdrop, which requires AceLibrary from Ace2.
For the most part, though, taint doesn't matter. Taint is only a problem if you get "action blocked" messages. Since you're using BugSack, just enable "Filter addon mistakes" and you won't be shown taint messages. If you get "action blocked", then it can be helpful to check taint messages, but otherwise they're not really something you need to worry about.
AtlasLoot does not use Ace2; it does, however, use Dewdrop, which requires AceLibrary from Ace2.
For the most part, though, taint doesn't matter. Taint is only a problem if you get "action blocked" messages. Since you're using BugSack, just enable "Filter addon mistakes" and you won't be shown taint messages. If you get "action blocked", then it can be helpful to check taint messages, but otherwise they're not really something you need to worry about.
AtlasLoot has AtlasLootFu built-in, and AtlasLootFu downloads Ace2. I put up a suggestion on the author's site to separate those 2 in the future, since AL uses Ace3 and ALF uses Ace2.
Unfortunately, some Ace2 addons have no up-to-date replacements, like AtlasLoot Enhanced. In the other hand, having Ace2 definitively broken could encourage their author to move on.
It's not random at all, it's 100% reproduceable. Make sure you are not in a city or inn and start logging off, while the StaticPopup is shown letting you cancel the logout process, cancel it.
AceComm-2.0 prehooks CancelLogout() due to its outdated chat channel handling code. It CAN NOT be fixed without rewriting the entirety of the AceComm-2.0 chat channel handling. The only option is to leave it as is or remove the hook so it doesn't error and instead allow people to cancel the logout but possibly break the state of AceComm-2.0 until they do relog or reload.
Sort answer, stop using addons that use AceComm-2.0.
12/12 03:33:34.282 Global variable CancelLogout tainted by Ace2 - Interface\AddOns\Ace2\AceComm-2.0\AceComm-2.0.lua:2144
12/12 03:33:34.282 pcall()
12/12 03:33:34.282 Interface\AddOns\Ace2\AceLibrary\AceLibrary.lua:65 safecall()
12/12 03:33:34.282 Interface\AddOns\Ace2\AceLibrary\AceLibrary.lua:599 Register()
12/12 03:33:34.282 Interface\AddOns\Ace2\AceComm-2.0\AceComm-2.0.lua:2339
12/12 03:33:34.282 Execution tainted by Ace2 while reading CancelLogout - Interface\FrameXML\StaticPopup.lua:1491 OnHide()
12/12 03:33:34.282 Interface\FrameXML\StaticPopup.lua:3386 StaticPopup_OnHide()
12/12 03:33:34.282 StaticPopup1:OnHide()
12/12 03:33:34.282 StaticPopup1:Hide()
12/12 03:33:34.282 Interface\FrameXML\StaticPopup.lua:3220 StaticPopup_Hide()
12/12 03:33:34.282 Interface\FrameXML\UIParent.lua:576
12/12 03:33:34.282 An action was blocked because of taint from Ace2 - orig()
12/12 03:33:34.282 Interface\AddOns\Ace2\AceComm-2.0\AceComm-2.0.lua:2017
12/12 03:33:34.282 Interface\FrameXML\StaticPopup.lua:1491 OnHide()
12/12 03:33:34.282 Interface\FrameXML\StaticPopup.lua:3386 StaticPopup_OnHide()
12/12 03:33:34.282 StaticPopup1:OnHide()
12/12 03:33:34.282 StaticPopup1:Hide()
12/12 03:33:34.282 Interface\FrameXML\StaticPopup.lua:3220 StaticPopup_Hide()
12/12 03:33:34.282 Interface\FrameXML\UIParent.lua:576
I would find which addon is using Ace2 to interfere with static popups. Maybe just disable Ace2 at the character load screen and see what other addons become disabled. Or grep through the addon folders to see if any of your other addons have ace2 embedded.
Once you know which addon is involved, debugging can proceed from there.
I still have some Ace2 addons myself and have never had a problem logging out, so it's not going to be Ace2 itself that's the problem. The way Blizzard taint tracking works, libraries end up getting blamed for everything that *any* of their client addons do.
Unfortunately, a couple of very popular mods I use still rely on Ace2. Is it up to the author of these mods then to move everything to Ace3? Is there something in Ace2 that isn't in Ace3 that would prevent mod authors from moving to Ace3 entirely?
For a few addons, there is the problem of AceOO, which has no non-Ace2 equivalent and makes "upgrading" addons that depend on it a major undertaking.
Which specific addons do you have that use Ace2? I have several, and have never had any problems.
I have the Curse Client install libraries separate from addons, so I can't tell you quickly what mods I use that still rely on Ace2. I could come up with a list at some point.
I know, for one, AtlasLoot still uses Ace2. I believe ArkInventory also still relies on Ace2.
I don't know what exactly I was doing when I got this Ace2 error. I had BugSack installed so I am able to at least track LUA/taint errors easily.
For the most part, though, taint doesn't matter. Taint is only a problem if you get "action blocked" messages. Since you're using BugSack, just enable "Filter addon mistakes" and you won't be shown taint messages. If you get "action blocked", then it can be helpful to check taint messages, but otherwise they're not really something you need to worry about.
AtlasLoot has AtlasLootFu built-in, and AtlasLootFu downloads Ace2. I put up a suggestion on the author's site to separate those 2 in the future, since AL uses Ace3 and ALF uses Ace2.
Its not very likely that someone will touch Ace2 and try to fix it, iirc it was nothing "simple".
AceComm-2.0 prehooks CancelLogout() due to its outdated chat channel handling code. It CAN NOT be fixed without rewriting the entirety of the AceComm-2.0 chat channel handling. The only option is to leave it as is or remove the hook so it doesn't error and instead allow people to cancel the logout but possibly break the state of AceComm-2.0 until they do relog or reload.
Sort answer, stop using addons that use AceComm-2.0.