WoWInterface

WoWInterface (https://www.wowinterface.com/forums/index.php)
-   General Authoring Discussion (https://www.wowinterface.com/forums/forumdisplay.php?f=20)
-   -   Hmm doing blahblah = { some stuff} (https://www.wowinterface.com/forums/showthread.php?t=51818)

Grimsin 02-02-15 03:14 AM

Hmm doing blahblah = { some stuff}
 
Okay so... can someone run me through what blahblah = { some stuff } is doing again? and if i local before blahblah it should technically localize it and work the same correct? the following causes taint because its in the global name space or at least I think thats whats going on.... Reason I am digging into it is because i noticed my glyph page is tainted for some reason. When i try to click on a glyph it says my addon has tryed to call a restricted function.

Code:

DefGMoveableFrames = {
                        --Blizzard Frames
                        ['MiniMapLFGFrame'] = false,
                        ['ShardBarFrame'] = false,
                        ['QuestLogFrame'] = false,
                        ['FriendsFrame'] = false,
                        ['LFDParentFrame'] = false,
                        ['KnowledgeBaseFrame'] = true,
                        ['MerchantFrame'] = false,
                        ['MailFrame'] = false,
                        ['DressUpFrame'] = false,
                        ['TaxiFrame'] = false,
                        ['QuestLogFrame'] = false,
                        ['PaperDollFrame'] = true,
                        ['InspectFrame'] = false,
                        ['AchievementFrame'] = false,
                        ['AchievementFrameHeader'] = true,
                        ['AchievementFrameCategoriesContainer'] = 'AchievementFrame',
                        ['CalendarFrame'] = false,
                        ['ContainerFrame1'] = false,
                        ['ContainerFrame2'] = false,
                        ['ContainerFrame3'] = false,
                        ['ContainerFrame4'] = false,
                        ['ContainerFrame5'] = false,
                        ['Minimap'] = false,
                       
                        --GrimUI Frames
                        ['GrimUIPlayerFrame'] = false,
                        ['GrimUIPartyFrame1'] = false,
                        ['GrimUIPartyFrame2'] = false,
                        ['GrimUIPartyFrame3'] = false,
                        ['GrimUIPartyFrame4'] = false,
                        ['GrimExpBar'] = false,
                        ['GrimRepBar'] = false,
                        ['GUI_DevBar'] = false,
                        ['Audio_UI_Control'] = true,
                        ['GUI_AnchorPoint1'] = false,
                        ['GUI_AnchorPoint2'] = false,
                        ['GUI_AnchorPoint3'] = false,
                        ['GUI_AnchorPoint4'] = false,
                        ['GUI_AnchorPoint5'] = false,
                        ['GUI_AnchorPoint6'] = false,
                        ['GUI_AnchorPoint7'] = false,
                        ['GUI_AnchorPoint8'] = false,
                        ['GUI_AnchorPoint9'] = false,
                        ['GUI_AnchorPoint10'] = false,
                        ['GUI_AnchorPoint11'] = false,
}


Grimsin 02-02-15 03:21 AM

Also similar issue with my bindings code. It causes taint. Is there any way around this? the L infront of the "blahblah" portion is for translation. More or less I need to know if there is a way to do this that does not involve dumping it in the global space.
The LUA portion looks like this

Lua Code:
  1. BINDING_HEADER_GRIMUI = "----- GrimUI -----"
  2. BINDING_HEADER_WORLD_TARGET = L["World Target / Flares"]
  3. BINDING_HEADER_AUDIO_BINDING = L["Sound"]
  4. BINDING_NAME_AUDIO_BINDING_TEMPMUTE = L["Temporary Mute"]
  5. BINDING_NAME_AUDIO_BINDING_TOGGLEMUTE = L["Toggle Mute"]
  6.  
  7.  
  8. _G["BINDING_NAME_CLICK GUI_BlueFlare:LeftButton"] = L["Blue Flare"]
  9. _G["BINDING_NAME_CLICK GUI_GreenFlare:LeftButton"] = L["Green Flare"]
  10. _G["BINDING_NAME_CLICK GUI_PurpleFlare:LeftButton"] = L["Purple Flare"]
  11. _G["BINDING_NAME_CLICK GUI_RedFlare:LeftButton"] = L["Red Flare"]
  12. _G["BINDING_NAME_CLICK GUI_YellowFlare:LeftButton"] = L["Yellow Flare"]
  13. BINDING_NAME_CLEAR_WORLD_TARGETS = L["Clear all World Targets"]

Lombra 02-02-15 07:38 AM

{ } creates a new table. Taint will not be introduced simply by virtue of a variable being global, but if that variable conflicts with another, it may be. I don't believe you can do binding labels in any other way, either. None of the code you posted should taint anything.

Grimsin 02-02-15 08:56 AM

Well I get glyph lock down from GrimUI with just GrimUI running. But get this.... if i remove all addons but GrimUI (DBM, Baggins, AshranBuddy, MSBT, Capping, umm one or two others) i get nothing in the taint log. Go figure. But with all addons running my addon appears to taint lots of things. All of which are things where it is putting something into the global space as apposed to being localized to that file or to the addon. Localizing it seems to drop it from the taint log but not everything in the list can be localized. Or maybe another way to go at this is... What could possibly cause the glyph frame to lock down? Originally I targeted my frame mover code and removed all of its interaction with the glyph frame but that did not stop it. I have no idea what i could have messed with that would have anything to do with the glyph frame. Ironically it is one of the few frames in the game i have not modified in some way. And No i did not mess with the two tabs attached to it either. lol.

Also just to clarify. Taint is what causes combat lockdown right? So somewhere some taint of some kind or another from one thing or another is responsible for the glyph lockdown correct? Or am I way off base? I just dont understand how My addon could be causing lockdown on the darn glyph frame....

Lombra 02-02-15 11:02 AM

Combat lockdown generally refers to the inability [by addons] to perform certain actions during combat. Tainting refers to addons in some way disturbing the secure environment of the default UI, sometimes causing things to break. Unfortunately, it's been more or less concluded that the taint report system more often than not places the blame on innocent addons. If you, with all addons enabled, can reliably reproduce the glyph frame taint, and this does not happen with only your addon enabled, then it's probably safe to say that your addon is not to blame.

Grimsin 02-02-15 11:12 AM

It does happen with only my addon enabled. The lockdown warning in game where it asks if you want to ignore or cancel? That happens just my addon or all addons. Whats interesting is that if i run JUST my addon then the taint log is empty even though i still get glyph frame lockdown

Duugu 02-02-15 12:01 PM

Quote:

Originally Posted by Grimsin (Post 305962)
It does happen with only my addon enabled. The lockdown warning in game where it asks if you want to ignore or cancel? That happens just my addon or all addons. Whats interesting is that if i run JUST my addon then the taint log is empty even though i still get glyph frame lockdown

Is the taint logging enabled? It's set to "disabled" (0) as Default.
http://wow.gamepedia.com/CVar_taintLog

Grimsin 02-02-15 12:17 PM

it is. Its set to 2. Not to mention the blank log is from one reload to the next. Reload with all but my addon on and log is blank. Load with all the addons mentioned above and the log is jammed packed. But both ways the glyph frame is locked down and claims to be because of my addon.
edit - when i say reload i mean /reload to not logging in and out all the way. Maybe that has something to do with it? but other testing suggests that is not the case because i can change code and /reload and the taint log changes accordingly.

Phanx 02-02-15 02:16 PM

Quote:

Originally Posted by Lombra (Post 305949)
I don't believe you can do binding labels in any other way, either.

Yes, you can. See for example Bartender4's Bindings.xml file:
Code:

        <Binding name="CLICK BT4Button1:LeftButton" header="BT4BLANK1" category="Bartender4 "/>
        <Binding name="CLICK BT4Button2:LeftButton" category="Bartender4 "/>
        <Binding name="CLICK BT4Button3:LeftButton" category="Bartender4 "/>
        <Binding name="CLICK BT4Button4:LeftButton" category="Bartender4 "/>
        <Binding name="CLICK BT4Button5:LeftButton" category="Bartender4 "/>
        <Binding name="CLICK BT4Button6:LeftButton" category="Bartender4 "/>

However:

Quote:

Originally Posted by Lombra (Post 305949)
None of the code you posted should taint anything.

This. Post the rest of your code. Also, the taint log is written in realtime, and gets wiped on /reload. Just open it and start looking as soon as you get the "action blocked" error, without reloading.

Grimsin 02-02-15 03:10 PM

Quote:

Originally Posted by Phanx (Post 305970)
Also, the taint log is written in realtime, and gets wiped on /reload. Just open it and start looking as soon as you get the "action blocked" error, without reloading.

Phanx - Long time no see :) Unfortunately GrimUI is an absolute beast and to post all relevant code would be out of control... I was unaware that taint logging was in real time and now that I know that im going to go back and test... i kept making it lockdown then reloading thinking a reload was necessary to write to the taint log. We shall see what I find out right now.

Hrrrm. So the taint log is staying blank even after the lockdown fires. are you sure its in real time? is the taint log called something or located someplace else while its live? Further testing and are you sure its live in real time?? it only ever changes with a reload.

Grimsin 02-02-15 03:11 PM

on a side note.... is it not a good idea though to go through and get as much stuff out of the global space as possible? After seeing everything that is in it i see a lot of clean up if that idea is true.

Grimsin 02-02-15 03:39 PM

Figured it out. Now I dont know what to do about it...... Also so taint log works like this... it is tracking live however it does not write live. So in other words... you do have to log out in order to get it to write but if you /reload it resets so... if you make the lock down happen then log out right away you find the culprit.

heres my culprit... its still a global issue...

2/2 13:36:12.260 Global variable LibStub tainted by GrimUI - Interface\AddOns\GrimUI\Libs\LibStub.lua:8

maybe. lol.

WHole taint log -
Code:

2/2 13:36:12.260  Global variable LibStub tainted by GrimUI - Interface\AddOns\GrimUI\Libs\LibStub.lua:8
2/2 13:36:12.260  Global variable AceGUIEditBoxInsertLink tainted by GrimUI - Interface\AddOns\GrimUI\Libs\widgets\AceGUIWidget-EditBox.lua:29
2/2 13:36:12.260  Global variable AceGUIMultiLineEditBoxInsertLink tainted by GrimUI - Interface\AddOns\GrimUI\Libs\widgets\AceGUIWidget-MultiLineEditBox.lua:32
2/2 13:36:12.276  Global variable SLASH_GrimUI1 tainted by GrimUI - Interface\AddOns\GrimUI\G02_Settings.lua:82
2/2 13:36:12.276  Global variable SLASH_GrimUI2 tainted by GrimUI - Interface\AddOns\GrimUI\G02_Settings.lua:83
2/2 13:36:12.276  Global variable SLASH_GrimUI3 tainted by GrimUI - Interface\AddOns\GrimUI\G02_Settings.lua:84
2/2 13:36:12.276  Global variable SLASH_GrimUI4 tainted by GrimUI - Interface\AddOns\GrimUI\G02_Settings.lua:85
2/2 13:36:12.276  Global variable BINDING_HEADER_GRIMUI tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:6
2/2 13:36:12.276  Global variable BINDING_HEADER_WORLD_TARGET tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:7
2/2 13:36:12.276  Global variable BINDING_HEADER_AUDIO_BINDING tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:8
2/2 13:36:12.276  Global variable BINDING_NAME_AUDIO_BINDING_TEMPMUTE tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:9
2/2 13:36:12.276  Global variable BINDING_NAME_AUDIO_BINDING_TOGGLEMUTE tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:10
2/2 13:36:12.276  Global variable BINDING_NAME_CLICK GUI_BlueFlare:LeftButton tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:13
2/2 13:36:12.276  Global variable BINDING_NAME_CLICK GUI_GreenFlare:LeftButton tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:14
2/2 13:36:12.276  Global variable BINDING_NAME_CLICK GUI_PurpleFlare:LeftButton tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:15
2/2 13:36:12.276  Global variable BINDING_NAME_CLICK GUI_RedFlare:LeftButton tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:16
2/2 13:36:12.276  Global variable BINDING_NAME_CLICK GUI_YellowFlare:LeftButton tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:17
2/2 13:36:12.276  Global variable BINDING_NAME_CLEAR_WORLD_TARGETS tainted by GrimUI - Interface\AddOns\GrimUI\G03_Bindings.lua:18
2/2 13:36:12.434  Global variable GUI_ArtFarLeft tainted by GrimUI - Interface\AddOns\GrimUI\G06_Skins.lua:16
2/2 13:36:12.434  Global variable DefGMoveableFrames tainted by GrimUI - Interface\AddOns\GrimUI\G08_FrameMover.lua:57
2/2 13:36:12.434  Global variable SLASH_GADDMOVE_SHORTHAND1 tainted by GrimUI - Interface\AddOns\GrimUI\G08_FrameMover.lua:259
2/2 13:36:12.434  Global variable SLASH_GREMMOVE_SHORTHAND1 tainted by GrimUI - Interface\AddOns\GrimUI\G08_FrameMover.lua:264
2/2 13:36:12.455  Global variable BINDING_NAME_GTIPNOTES_PRINT tainted by GrimUI - Interface\AddOns\GrimUI\G15_TooltipNotes.lua:3
2/2 13:36:12.455  Global variable SLASH_GTIPNOTES_SHORTHAND1 tainted by GrimUI - Interface\AddOns\GrimUI\G15_TooltipNotes.lua:78
2/2 13:36:12.455  Global variable SLASH_GTIPNOTES_SHORTHAND2 tainted by GrimUI - Interface\AddOns\GrimUI\G15_TooltipNotes.lua:79
2/2 13:36:12.455  Global variable SLASH_GTIPNOTES_SHORTHAND3 tainted by GrimUI - Interface\AddOns\GrimUI\G15_TooltipNotes.lua:80
2/2 13:36:12.464  Global variable ClickCastFrames tainted by GrimUI - Interface\AddOns\GrimUI\G20_PlayerFrame.lua:1004
2/2 13:36:12.464  Global variable GrimUI tainted by GrimUI - Interface\AddOns\GrimUI\G51_Features_B.lua:3
2/2 13:36:12.464  Global variable GDropDownCheck tainted by GrimUI - Interface\AddOns\GrimUI\G51_Features_B.lua:41
2/2 13:36:12.464  Global variable Audio_Local_VolumeBarMask_Scripts tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:55
2/2 13:36:12.464  Global variable Audio_Local_DraggingVolumeBar tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:56
2/2 13:36:12.464  Global variable Audio_Local_VolumeBars tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:57
2/2 13:36:12.464  Global variable Audio_Hook_BindVolumeBar tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:60
2/2 13:36:12.464  Global variable Audio_OnDragStart tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:90
2/2 13:36:12.464  Global variable Audio_OnDragEnd tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:94
2/2 13:36:12.464  Global variable Audio_Local_UpdateInterval tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:98
2/2 13:36:12.464  Global variable Audio_OnDragUpdate tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:99
2/2 13:36:12.464  Global variable Audio_Local_MuteButton_Scripts tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:112
2/2 13:36:12.464  Global variable Audio_Local_MuteButtons tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:113
2/2 13:36:12.464  Global variable Audio_Hook_BindMuteButton tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:116
2/2 13:36:12.464  Global variable Audio_Local_Events tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:129
2/2 13:36:12.464  Global variable Audio_Local_BindingBasedMute tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:130
2/2 13:36:12.464  Global variable Audio_SetCVar tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:140
2/2 13:36:12.464  Global variable Audio_OnLoad tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:152
2/2 13:36:12.464  Global variable Audio_SetupEvents tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:159
2/2 13:36:12.464  Global variable Audio_SetupScripts tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:168
2/2 13:36:12.464  Global variable Audio_RefreshAudio tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:177
2/2 13:36:12.464  Global variable Audio_ToggleMute tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:194
2/2 13:36:12.464  Global variable Audio_SetVolume tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:203
2/2 13:36:12.464  Global variable Audio_Mute tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:219
2/2 13:36:12.464  Global variable Audio_UnMute tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:226
2/2 13:36:16.373  Global variable VehicleMenuBar_MoveMicroButtons tainted by GrimUI - Interface\AddOns\GrimUI\G18_ActionBars.lua:130 InitiateActionBars()
2/2 13:36:16.373      Interface\AddOns\GrimUI\G18_ActionBars.lua:217 func()
2/2 13:36:16.373      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:16.498  Global variable Audio_Local_DraggingVolumeBar tainted by GrimUI - Interface\AddOns\GrimUI\G55_VolumeBar.lua:95 Audio_OnDragEnd()
2/2 13:36:16.498      Interface\AddOns\GrimUI\G55_VolumeBar.lua:82 v()
2/2 13:36:16.498      Interface\AddOns\GrimUI\G55_VolumeBar.lua:171
2/2 13:36:16.498      GUI_VolumeBar:Hide()
2/2 13:36:16.498      Interface\AddOns\GrimUI\G55_VolumeBar.lua:236 GUI_ShowVolume()
2/2 13:36:16.498      Interface\AddOns\GrimUI\G55_VolumeBar.lua:247 func()
2/2 13:36:16.498      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:28.645  Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:613 GlyphFrameSpell_OnClick()
2/2 13:36:28.645  An action was blocked because of taint from GrimUI - CastGlyph()
2/2 13:36:28.645      Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:613 GlyphFrameSpell_OnClick()
2/2 13:36:28.645      GlyphFrameScrollFrameButton2:OnClick()
2/2 13:36:54.559  Global variable EVENT_TRACE_EVENT_HEIGHT tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:1
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EVENT_TRACE_MAX_ENTRIES tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:2
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable DEBUGLOCALS_LEVEL tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:4
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EVENT_TRACE_SYSTEM_TIMES tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:7
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EVENT_TRACE_EVENT_COLORS tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:11
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnLoad tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:23
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnEvent tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:48
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnShow tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:126
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnUpdate tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:133
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnSizeChanged tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:137
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_Update tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:167
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_StartEventCapture tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:269
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_StopEventCapture tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:281
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_HandleSlashCmd tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:293
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnMouseWheel tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:316
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_UpdateKeyboardStatus tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:329
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_OnKeyUp tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:340
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrame_RemoveEvent tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:348
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrameEvent_DisplayTooltip tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:390
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrameEvent_OnEnter tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:429
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrameEvent_OnLeave tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:442
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrameEvent_OnClick tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:451
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable EventTraceFrameEventHideButton_OnClick tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:460
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrame_OnLoad tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:507
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrame_OnShow tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:520
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrame_OnError tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:524
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrame_Update tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:556
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrame_UpdateButtons tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:611
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrame_DeleteError tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:636
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable ScriptErrorsFrameButton_OnClick tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:647
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable DebugTooltip_OnLoad tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:674
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable FrameStackTooltip_Toggle tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:682
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable FRAMESTACK_UPDATE_TIME tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:695
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable FrameStackTooltip_OnUpdate tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:697
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable FrameStackTooltip_OnShow tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:705
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable FrameStackTooltip_OnEnter tainted by GrimUI - Interface\AddOns\Blizzard_DebugTools\Blizzard_DebugTools.lua:727
2/2 13:36:54.559      LoadAddOn()
2/2 13:36:54.559      Interface\FrameXML\BasicControls.xml:<Scripts>:7
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Execution tainted by GrimUI while reading ScriptErrorsFrame_OnError - Interface\FrameXML\BasicControls.xml:<Scripts>:18
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Global variable _ERROR_COUNT tainted by GrimUI - Interface\FrameXML\BasicControls.xml:<Scripts>:26
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14
2/2 13:36:54.559  Execution tainted by GrimUI while reading _ERROR_COUNT - Interface\FrameXML\BasicControls.xml:<Scripts>:27
2/2 13:36:54.559      Interface\AddOns\GrimUI\G50_Features_A.lua:154 func()
2/2 13:36:54.559      Interface\AddOns\GrimUI\G01_Core.lua:14


Grimsin 02-02-15 04:27 PM

What is the likely hood that libstub is actually causing this?

Lombra 02-02-15 04:54 PM

Quote:

Originally Posted by Phanx (Post 305970)
Yes, you can. See for example Bartender4's Bindings.xml file:

Right, seems to work for categories, but not for the other stuff I think.

Quote:

Originally Posted by Grimsin (Post 305978)
What is the likely hood that libstub is actually causing this?

None.

I'm guessing the taint log works like the combat log in that it gets written to only once it has a certain amount of text to write. But yeah logging out will always write to it.

You should not use taint log level 2 I think. It prints a looot of stuff. Use level 1 instead.

Phanx 02-02-15 05:58 PM

Quote:

Originally Posted by Lombra (Post 305980)
Right, seems to work for categories, but not for the other stuff I think.

No, it works fine for everything. Look at the example I posted from BT4. It's defining actual bindings that way, not categories.

Quote:

Originally Posted by Lombra (Post 305980)
I'm guessing the taint log works like the combat log in that it gets written to only once it has a certain amount of text to write.

This would be my guess as well, and the buffer size probably depends on your hardware. At level 2 it writes pretty much continuously to the file on my machine.

Quote:

Originally Posted by Lombra (Post 305980)
You should not use taint log level 2 I think. It prints a looot of stuff. Use level 1 instead.

Yes, but you need all that stuff. Level 1 is only useful for finding glaringly obvious stuff like "oh you overwrote the Show method on an action button" if that.

Quote:

Originally Posted by Grimsin (Post 305974)
on a side note.... is it not a good idea though to go through and get as much stuff out of the global space as possible? After seeing everything that is in it i see a lot of clean up if that idea is true.

Yes. If it's not one of these things, it probably should not be global:
  • saved variables
  • your main addon object (for in-game debugging and third-party access)
  • top-level display frames (for identification with /fstack)
  • frames or other widgets that inherits from a Blizzard template that requires a name
  • names for bindings and headers that were declared in a Bindings.xml file
  • templates defined in XML

And anything that is a global should have a name that is unique and identifies it as belong it to your addon. A global variable named "x" or "_" for example will probably break everything.

Also, "global variable X tainted by Y" generally just means that Y created the global variable X. Everything created or touched by an addon is tainted by default, unless it's a secure frame created and managed using "safe" secure templates and methods.

What you want to look for in the taint log is the "action blocked" error. Then work your way backwards through the log looking at every entry that mentions the same object/function/variable to find out where it got tainted.

Lombra 02-02-15 07:14 PM

Quote:

Originally Posted by Phanx (Post 305982)
No, it works fine for everything. Look at the example I posted from BT4. It's defining actual bindings that way, not categories.

Those are defined as globals in Bartender4.lua:73.

Hm ok, did they change level 2 to be more useful at some point? I just remember hearing years ago that it would print like everything that was going on in the UI or something. Have never actually used it I don't think.

Phanx 02-02-15 07:20 PM

Quote:

Originally Posted by Lombra (Post 305985)
Those are defined as globals in Bartender4.lua:73.

Yes, that's how binding names work... what difference are you seeing between BT4's bindings and the binding names Grimsin posted that you thought were problematic?

Grimsin 02-02-15 08:38 PM

Okay well... Nothing going back from that has anything to do with anything of any importance how ever.... as i started to weed out the stuff that it did show i got some new data. It pointed to this particular section of code and my use of of the setattribute and then the hide/show of the micro bar.
Lua Code:
  1. local addonName, addon = ...
  2.  
  3. --[[-----------------------------------------------------------------------------
  4. GrimUI options/config button
  5. -------------------------------------------------------------------------------]]
  6. local GUI_ConfigButton = CreateFrame('Button', GUI_ConfigButton, UIParent, 'SecureHandlerClickTemplate')
  7. GUI_ConfigButton:SetSize(62, 30)
  8. GUI_ConfigButton:RegisterForClicks('AnyUp')
  9. GUI_ConfigButton:SetNormalTexture([[Interface\AddOns\]] .. addonName .. [[\Media\ConfigButton]])
  10. GUI_ConfigButton:SetHighlightTexture([[Interface\AddOns\]] .. addonName .. [[\Media\ConfigButton]])
  11. GUI_ConfigButton:SetPoint('BOTTOMRIGHT', addon.skin, 'TOPRIGHT', -2, 0)
  12.    
  13. GUI_ConfigButton:SetAttribute('_onclick', [[
  14.     if button == 'LeftButton' and not IsControlKeyDown() and not IsAltKeyDown() then
  15.         local microBar = self:GetFrameRef("microBar")
  16.         if microBar:IsVisible() then
  17.             microBar:Hide()
  18.         else
  19.             microBar:Show()
  20.         end
  21.     elseif button == 'RightButton' and not IsControlKeyDown() then
  22.         control:CallMethod("OpenConfig")
  23.     end
  24. ]])
  25.  
  26. function GUI_ConfigButton:OpenConfig()
  27.     if addon.configPanel and addon.configPanel:IsVisible() then
  28.         InterfaceOptionsFrame:Hide()
  29.     else
  30.         addon.configPanel(GrimUI)
  31.         addon.configPanel(GrimUI)
  32.     end
  33. end
  34.  
  35.  
  36. GUI_ConfigButton:SetScript('OnEnter', function(self)
  37.     GameTooltip:SetOwner(self, 'ANCHOR_TOP', 0, 15)
  38.     GameTooltip:AddLine("|cffeda55fLeftClick|r toggle MicroBar", 0.2, 1, 0.2)
  39.     GameTooltip:AddLine("|cffeda55fRightClick|r Options Panel", 0.2, 1, 0.2)
  40.     if Macaroon then
  41.         GameTooltip:AddLine("|cffeda55fCtrl+LeftClick|r Button Binds", 0.2, 1, 0.2)
  42.         GameTooltip:AddLine("|cffeda55fCtrl+RightClick|r Button Config", 0.2, 1, 0.2)
  43.     end
  44.     GameTooltip:AddLine("|cffeda55fAlt+LeftClick|r Toggle VolumeBar", 0.2, 1, 0.2)
  45.     GameTooltip:Show()
  46. end)
  47.  
  48. GUI_ConfigButton:HookScript("OnClick", function(self, button)
  49.     if Macaroon then
  50.         if button == 'LeftButton' and IsControlKeyDown() then
  51.             Macaroon.ButtonBind(off)
  52.         elseif IsControlKeyDown() and button == 'RightButton' then
  53.             Macaroon.ConfigBars()
  54.         end
  55.     end
  56.     if button == 'LeftButton' and IsAltKeyDown() then
  57.         if addon.settings.showVolume == true then
  58.             addon.settings.showVolume = false
  59.             addon:GUI_ShowVolume()
  60.         elseif addon.settings.showVolume == false then
  61.             addon.settings.showVolume = true
  62.             addon:GUI_ShowVolume()
  63.         end
  64.     end
  65. end)
  66.  
  67. GUI_ConfigButton:SetScript('OnLeave', addon.HideTooltip)

Lombra 02-03-15 04:00 AM

Quote:

Originally Posted by Phanx (Post 305986)
Yes, that's how binding names work... what difference are you seeing between BT4's bindings and the binding names Grimsin posted that you thought were problematic?

I never said anything about them being problematic.


If you open the talent/glyph frame insecurely that is not unlikely to taint stuff, so that could have something to do with it, I guess.

Grimsin 02-03-15 12:04 PM

It may. Today ill tinker with removing that in various ways. Maybe Phanx knows a way to do what I have done without it causing lockdown? Also it did not lockdown prior to dranor. At least not that i was aware of. I know at one point it was okay for sure. If I can fix this then the only other lockdown problem is in my objectives frame and its only a problem when a specific condition is met unlike this which is a problem the moment you log in. The objectives frame became an issue with pandaria. Now that I am thinking about it, that is probably when the glyph frame became a problem as well. Until a few days ago I had almost forgotten glyphs existed lol.


All times are GMT -6. The time now is 05:53 AM.

vBulletin © 2020, Jelsoft Enterprises Ltd
© 2004 - 2020 MMOUI