30 - GridStatusRaidDebuff causes variable taint that conflicts with default Blizzard interface
What steps will reproduce the problem?
1. Enable Grid and GridStatusRaidDebuff.
2. Go to Symbols tab in Talents interface and try to change symbol.
3. Message popups telling that addon tries to do protected operation reserved for Blizzard UI (I have a russian version of WoW so cannot reproduce it here exactly but we all know how it looks). It not always points to GridStatusRaidDebuff but can report other addon (maybe they also have similar problem, not checked it).
What version of GridStatusRaidDebuff? (Please do not say "latest")
r301
What version of Grid? (Please do not say "latest")
5.0.4.1520
Are you running GridStatusRD_Cata and if so, what version? (Please do not say "latest")
yes, r29
What language (localization/region) are you running?
ru_RU
Do you have an error log of what happened?
Yes, when I enable taints reporting, I have following in Logs/taint.log :
9/1 15:55:48.673 Global variable _ tainted by GridStatusRaidDebuff - Interface\AddOns\GridStatusRaidDebuff\Core.lua:464 DebuffLocale()
9/1 15:55:48.673 Interface\AddOns\GridStatusRaidDebuff\Core.lua:498 Debuff()
9/1 15:55:48.673 Execution tainted by GridStatusRaidDebuff while reading _ - Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:174 GlyphFrame_Update()
9/1 15:55:48.673 Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:91
9/1 15:55:48.673 CastGlyph()
9/1 15:55:48.673 Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:527 GlyphFrameSpell_OnClick()
9/1 15:55:48.673 GlyphFrameScrollFrameButton5:OnClick()
9/1 15:55:48.673 An action was blocked because of taint from GridStatusRaidDebuff - CastGlyph()
9/1 15:55:48.673 Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:527 GlyphFrameSpell_OnClick()
9/1 15:55:48.673 GlyphFrameScrollFrameButton5:OnClick()
Please provide any additional information below.
Seems that problem caused by setting global variable named _ that is used as a placeholder for receiving unused data from some functions. It seems that Blizzard's own interface also uses it as a global variable (which is bad but we cannot address it). My proposal is to declare this variable local, this effectively fixes bug. I'll attach patch file ...
| Name | Description | Size | MD5 |
|---|---|---|---|
| Core.lua.diff | Diff file with proposed patch | 915 B | 29e9cb9c6256... |
| Core.lua | Just patched file. | 27.9 KiB | e190994693ed... |
| User | When | Change |
|---|---|---|
| stassart | Sep 02, 2012 at 18:17 UTC | Changed status from Waiting to Replied |
| stassart | Sep 01, 2012 at 21:08 UTC | Changed status from Invalid to Waiting |
| stassart | Sep 01, 2012 at 16:22 UTC | Changed status from New to Invalid |
| stassart | Sep 01, 2012 at 16:21 UTC | Changed assigned to from azelkeeber to stassart |
| Antonz | Sep 01, 2012 at 15:33 UTC | Changed description:What steps will reproduce the problem? 1. Enable Grid and GridStatusRaidDebuff. 2. Go to Symbols tab in Talents interface and try to change symbol. - 3. Message popups telling that addon tries to do protected operation (I have a russian version of WoW so cannot reproduce it here). It not always points to GridStatusRaidDebuff but can report other addon (maybe they also have similar problem, not checked it). + 3. Message popups telling that addon tries to do protected operation reserved for Blizzard UI (I have a russian version of WoW so cannot reproduce it here exactly but we all know how it looks). It not always points to GridStatusRaidDebuff but can report other addon (maybe they also have similar problem, not checked it). What version of GridStatusRaidDebuff? (Please do not say "latest") r301 |
| Antonz | Sep 01, 2012 at 15:21 UTC | Added attachment Core.lua |
| Antonz | Sep 01, 2012 at 15:21 UTC | Added attachment Core.lua.diff |
| Antonz | Sep 01, 2012 at 15:18 UTC | Create |
- 6 comments
- 6 comments
Facts
- Last updated
- Sep 02, 2012
- Reported
- Sep 01, 2012
- Status
- Replied - Someone has replied after waiting for more information.
- Type
- Defect - A shortcoming, fault, or imperfection
- Priority
- Medium - Normal priority.
- Votes
- 0
- Reply
- #6
stassart Sep 02, 2012 at 18:17 UTC - 0 likesI had another idea to deal with this issue. I uploaded a small addon to this project that all it does is put up a pop-up on log in to tell the user to swap to GridStatusRaidDebuff MoP.
That should help notify users about the swap if they download this addon without reading the Curse page.
- Reply
- #5
stassart Sep 01, 2012 at 21:08 UTC - 0 likesI have tried requesting it before and been denied. I just submitted another one. If this ticket gets denied again I will mark all files on this addon as "alpha" so that they don't show up on the Curse site, that might make it clearer to users that they need to switch addons.
- Reply
- #4
Antonz Sep 01, 2012 at 19:44 UTC - 0 likesThanks for clarification. I thought there was some procedure for taking over dead and abandoned addons, I have seen it for some other addons. Maybe Curse mods can help?
- Reply
- #3
stassart Sep 01, 2012 at 19:18 UTC - 0 likesThe "manager" of this addon, azelkeeber, hasn't responded at least since June, 2011 probably longer (that's as far back as my curse messages go).
I do not have access to make some of the changes I had wanted to make to the addon for a while now. Like I have moved the new MoP version to using the Curseforge localization system. There are other items I do not have access to also.
I am considering dropping libbabble and localizing what is required for the addon so I no longer require libbabble updates for this addon to work, but I haven't taken a hard stance on that yet.
I can't easilly update this version as the new version builds using the Curse localization system, so if I uploaded the updates to the MoP version to this project, it wouldn't work. I would have to manually upload .zip files for this addon and that doesn't work well.
I understand that it inconveniences users and I apologize, but I believe it will be better in the long run.
- Reply
- #2
Antonz Sep 01, 2012 at 18:43 UTC - 0 likesI haven't tried it yet, but from analyzing code of MoP addon I see that it doesn't have this issue, thanks. But why to create separate addon for MoP? Will it be merged with previous, or put on Curse? Because now for users using old addon and waiting for updates this is confusing.
- Reply
- #1
stassart Sep 01, 2012 at 16:20 UTC - 0 likesI assume this is for MoP, have you tried using the MoP version of this addon:
http://wow.curseforge.com/addons/gridstatusraiddebuff-mop/