_ global being tainted #97


  • New
  • Defect
Open
Assigned to merialkilrogg
  • MysticalOS created this issue Aug 29, 2012

    In sellframe as well as some other places.

    refer to shefki's post here. http://us.battle.net/wow/en/forum/topic/6413263287

    auctionlite will break glyph UI because of bad code on blizzards part. Blizzard leaking _ as a global, but when mod authors call _ as a global instead of a local function, we taint the glyph UI.

    These leaks need fixing in auctionlite to avoid problems.

    such as this

      local name, color, enchant, jewel1, jewel2, jewel3, jewel4;
      local showPlus;

      if SellLink ~= nil then
        name, color, _, _, enchant, jewel1, jewel2, jewel3, jewel4 =
          self:SplitLink(SellLink);

    in sell frame.

    without local, you are simply calling blizzards leaked _ global and tainting glyph UI

    need to use a local variable, or use something else here

    something like

      local name, color, arg3, arg4, enchant, jewel1, jewel2, jewel3, jewel4;
      local showPlus;

      if SellLink ~= nil then
        name, color, arg3, arg4, enchant, jewel1, jewel2, jewel3, jewel4 =
          self:SplitLink(SellLink);

    would avoid the problem in this example.

  • MysticalOS added the tags New Defect Aug 29, 2012
  • MysticalOS posted a comment Aug 29, 2012

    note, that example and file are not the only place with problem, look in externals too, and possibly other files, i didn't do a super search just skim.

  • _ForgeUser298342 posted a comment Sep 1, 2012

    This is the taint that I get from the taint log.

      Global variable _ tainted by AuctionLite - Interface\AddOns\AuctionLite\External.lua:28
          Interface\AddOns\AuctionLite\Tooltip.lua:84 AddTooltipLine()
          Interface\AddOns\AuctionLite\Tooltip.lua:156 AddTooltipData()
          Interface\AddOns\AuctionLite\Tooltip.lua:229
          GameTooltip:SetBagItem()
          Interface\FrameXML\ContainerFrame.lua:815 ContainerFrameItemButton_OnEnter()
          Interface\AddOns\ArkInventory\ArkInventory.lua:6384 Frame_Item_OnEnter()
          ARKINV_Frame1ContainerBag5Item21:OnEnter()
      Execution tainted by AuctionLite while reading _ - Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:174 GlyphFrame_Update()
          Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:91
          CastGlyph()
          Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:527 GlyphFrameSpell_OnClick()
          GlyphFrameScrollFrameButton3:OnClick()
      An action was blocked because of taint from AuctionLite - CastGlyph()
          Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:527 GlyphFrameSpell_OnClick()
          GlyphFrameScrollFrameButton3:OnClick()
    
  • MysticalOS posted a comment Sep 2, 2012

    lol, i laughed at your solution. Simple bug effective. :)


To post a comment, please login or register a new account.