nPlates 2.0

nPlates 2.0

147k Downloads

Taint!

Cluuey opened this issue ยท 16 comments

commented

I've been going through the addons I use one at a time trying to work out what is the root cause of the occasional errors I find, I know something is causing taint somewhere and then other mods are getting the blame.
I enabled the taint log and I've been going through one addon at a time, current I've only got nPlates enabled and I got this in the taint.log file.

2/26 13:37:18.637  Global variable nPlates_OnEvent tainted by nPlates - Interface\AddOns\nPlates\core.lua:17
2/26 13:37:18.637  Global variable SLASH_nplates1 tainted by nPlates - Interface\AddOns\nPlates\slash.lua:35

This was just logging in and then logging out, there were no visible name plates on the screen.

commented

When you have the taint log set to full you end up getting a lot of information that isn't helpful. Taint is kind of a misleading description because anything that isn't Blizzard code is by default tainted. The only time taint is a problem is when an addon tries to interact with secure code. I would suggest using basic taint log "/console taintLog 1" and seeing what comes up. Here is a wiki that has more about taint.

That said I can still try and help you fix the problem. What are you doing when the problem shows up?

commented

I logged in and out with just this addon enabled.

I'll read through that wiki article you linked so I understand it a bit better.
Originally I had it set to level one but it wasn't showing enough information, so I changed it to two and now I'm going through to see which addons are causing me problems.

I'm suspecting a shared library, as I'll get lots of different addon names in the !Swatter log. It's very frustrating.

Edit.
Okay I've read that now, I think I understand what it's saying.
So I can ignore taint lines in the log and just pay attention when it says something was blocked?

commented

For the most part that is correct. If you see anything in the log that looks related to the error you are getting in game you may want to pay attention to it since it could be a clue to what the problem is but an action being blocked is an issue. Keep in mind that the log will sometimes blame the wrong addon.

Also it can be Blizzards fault like the current /exit bug. It will blame an addon but it was Blizzards code change that is causing that.

commented

Most of the time the name is reliable but if you see the same kind of error blaming more than one addon the easiest way to find the problem is to turn those addons off one by one until the error stops. Also someone like me can also guess what the true problem could be based on the functions show up in the log. Send me the error you are getting and I may be able to figure it out.

commented

Oh, the taint log can also blame the wrong addon?
I'd turned the taint log on to try and work out what the initial cause was, but you're saying this won't help?

Can I work backwards from the error?

  1. Notice error in Swatter, which is what normally happens. However I've noticed that different addons get flagged by it for similar errors.
  2. Look in the taint log for the last error, which should be the blocked one.
  3. Search upwards for the tainted bit and make notes of what has tainted it.
  4. Get to the first taint and I've got my culprit?

I've got a nasty feeling that anything along the taint path can be the cause, not just the first one but I don't know so I'm asking as you've been so helpful. :-)

commented

Sorry for the delay, real life has raised it's head and started yelling.

There's probably a better place for looking at the errors than a, faulty, report on your addon but I can't work out how to send you a message here.

commented

Sadly github doesn't have a way to directly message people so you can just post it here.

commented

Okay then.
I'm not even sure what ArenaPrepFrames look like, so I don't know what's going on here. It isn't something I've tried moving though.

Reading them it looks like it's trying to set, clear and set them, whatever they are. I don't really do any PvP, I almost said I hadn't set foot in an arena but I did do something on an event week, a Brawl but it might have been in an arena setting? I'm not sure.

I can't remember what was happening when I got this, however a common theme is something happening, or trying to happen, in combat lockdown even if I'm not in combat when the error is captured.

ID: -4
Error occured in: AddOn: MoveAnything
Count: 131
Message: Note: AddOn MoveAnything attempted to call a protected function (ArenaPrepFrames:SetPoint()) during combat lockdown.
Debug:
   [C]: SetPoint()
   ..\FrameXML\UIParent.lua:2932: UIParentManageFramePositions()
   ..\FrameXML\UIParent.lua:2212:
      ..\FrameXML\UIParent.lua:2199
   [C]: SetAttribute()
   ..\FrameXML\UIParent.lua:2964:
      ..\FrameXML\UIParent.lua:2962
   [C]: UIParent_ManageFramePositions()
   ..\FrameXML\BuffFrame.lua:331: BuffFrame_UpdateAllBuffAnchors()
   ..\FrameXML\BuffFrame.lua:104: BuffFrame_Update()
   ..\FrameXML\BuffFrame.lua:49:
      ..\FrameXML\BuffFrame.lua:45
Locals:
None

Date: 2018-02-28 22:50:01
ID: -5
Error occured in: AddOn: MoveAnything
Count: 131
Message: Note: AddOn MoveAnything attempted to call a protected function (ArenaPrepFrames:ClearAllPoints()) during combat lockdown.
Debug:
   [C]: ClearAllPoints()
   ..\FrameXML\UIParent.lua:2931: UIParentManageFramePositions()
   ..\FrameXML\UIParent.lua:2212:
      ..\FrameXML\UIParent.lua:2199
   [C]: SetAttribute()
   ..\FrameXML\UIParent.lua:2964:
      ..\FrameXML\UIParent.lua:2962
   [C]: UIParent_ManageFramePositions()
   ..\FrameXML\BuffFrame.lua:331: BuffFrame_UpdateAllBuffAnchors()
   ..\FrameXML\BuffFrame.lua:104: BuffFrame_Update()
   ..\FrameXML\BuffFrame.lua:49:
      ..\FrameXML\BuffFrame.lua:45
Locals:
None

Date: 2018-02-28 22:50:01
ID: -6
Error occured in: AddOn: MoveAnything
Count: 131
Message: Note: AddOn MoveAnything attempted to call a protected function (ArenaEnemyFrames:SetPoint()) during combat lockdown.
Debug:
   [C]: SetPoint()
   ..\FrameXML\UIParent.lua:2927: UIParentManageFramePositions()
   ..\FrameXML\UIParent.lua:2212:
      ..\FrameXML\UIParent.lua:2199
   [C]: SetAttribute()
   ..\FrameXML\UIParent.lua:2964:
      ..\FrameXML\UIParent.lua:2962
   [C]: UIParent_ManageFramePositions()
   ..\FrameXML\BuffFrame.lua:331: BuffFrame_UpdateAllBuffAnchors()
   ..\FrameXML\BuffFrame.lua:104: BuffFrame_Update()
   ..\FrameXML\BuffFrame.lua:49:
      ..\FrameXML\BuffFrame.lua:45
Locals:
None
commented

This one I do know what happened and it bugs me a lot.
Last night I noticed that my raid frames hadn't adjusted properly after the raid composition changed, I use the standard Blizzard compact raid frames. I've been using these as I remember having nightmares with custom frames a decade ago when I used to heal. Now I'm playing feral so I just have frames up so I can battle res someone if required.
The default ones have improved immensely since launch, not hard given there weren't any!

Anyway I noticed they looked a bit funny, I put my mouse over one to see who it was. We were between pulls out of combat. I'm not positive but I don't think people joined or left while we were in combat, changes normally happen in down time but perhaps I was killing trash and the RL swapped things around then.
This is the error which happened when I put my mouse over the frame, it looked like it was two offline or dead units on top of each other.

ID: -10
Error occured in: AddOn: PotButton
Count: 3
Message: Note: AddOn PotButton attempted to call a protected function (CompactRaidFrame21:Hide()) during combat lockdown.
Debug:
   [C]: Hide()
   ..\FrameXML\CompactUnitFrame.lua:352: CompactUnitFrame_UpdateVisible()
   ..\FrameXML\CompactUnitFrame.lua:283:
      ..\FrameXML\CompactUnitFrame.lua:281
   [C]: CompactUnitFrame_UpdateAll()
   ..\FrameXML\CompactUnitFrame.lua:174: CompactUnitFrame_SetUnit()
   ...actRaidFrames\Blizzard_CompactRaidFrameContainer.lua:31: releaseFunc()
   ...ames\Blizzard_CompactRaidFrameReservationManager.lua:27: CompactRaidFrameReservation_ReleaseUnusedReservations()
   ...actRaidFrames\Blizzard_CompactRaidFrameContainer.lua:359: CompactRaidFrameContainer_ReleaseAllReservedFrames()
   ...actRaidFrames\Blizzard_CompactRaidFrameContainer.lua:189: CompactRaidFrameContainer_LayoutFrames()
   ...actRaidFrames\Blizzard_CompactRaidFrameContainer.lua:130: CompactRaidFrameContainer_TryUpdate()
   ...actRaidFrames\Blizzard_CompactRaidFrameContainer.lua:62: CompactRaidFrameContainer_OnEvent()
   [string "*:OnEvent"]:1:
      [string "*:OnEvent"]:1
Locals:
None
commented

I've put these in separate replies as it doesn't cope with multiple quotes in one post, or just doesn't cope with closing the quote and typing after it.

Sometimes I get errors like this one, not as often but very frustrating as they don't seem to tell me anything useful.

ID: -9
Error occured in: Global
Count: 1
Message: ..\FrameXML\UnitFrame.lua line 469:
   Usage: GameTooltip:SetUnit("unit"[, hideStatus])
Debug:
   ..\FrameXML\SecureHandlers.lua:36:
      ..\FrameXML\SecureHandlers.lua:34
   [C]: ?
   [C]: ?
   ..\FrameXML\SecureHandlers.lua:40:
      ..\FrameXML\SecureHandlers.lua:39
   ..\FrameXML\SecureHandlers.lua:268:
      ..\FrameXML\SecureHandlers.lua:263
   [C]: ?
   ..\FrameXML\SecureHandlers.lua:322:
      ..\FrameXML\SecureHandlers.lua:306
   (tail call): ?
Locals:
None
commented

I just found the one I was going to send the other day, before I had to deal with other things.
I can't remember exactly but I don't think I was in combat, the time stamp suggests that I was checking auctions or auction mail. Something which Beancounter would want to know about, however I've got no idea why it needs to be looking at MultiBarBottomRightButton12.

ID: 51
Error occured in: AddOn: BeanCounter
Count: 3
Message: Note: AddOn BeanCounter attempted to call a protected function (MultiBarBottomRightButton12:Show()) during combat lockdown.
Debug:
   [C]: Show()
   ..\FrameXML\ActionButton.lua:364: ActionButton_Update()
   ..\FrameXML\ActionButton.lua:720: ActionButton_OnEvent()
   ..\FrameXML\ActionButton.lua:207:
      ..\FrameXML\ActionButton.lua:204
Locals:
None
commented

Another older one, different mod but again something about ArenaEnemyFrames.
I'm pretty sure this was when I was adjusting where things are, but you can't do that in combat so I wasn't!

ID: 1
Error occured in: AddOn: IceHUD
Count: 2
Message: Note: AddOn IceHUD attempted to call a protected function (ArenaEnemyFrames:ClearAllPoints()) during combat lockdown.
Debug:
   [C]: ClearAllPoints()
   ..\FrameXML\UIParent.lua:2926: UIParentManageFramePositions()
   ..\FrameXML\UIParent.lua:2212:
      ..\FrameXML\UIParent.lua:2199
   [C]: SetAttribute()
   ..\FrameXML\UIParent.lua:2964:
      ..\FrameXML\UIParent.lua:2962
   [C]: UIParent_ManageFramePositions()
   ..\FrameXML\BuffFrame.lua:331: BuffFrame_UpdateAllBuffAnchors()
   ..\FrameXML\BuffFrame.lua:104: BuffFrame_Update()
   ..\FrameXML\BuffFrame.lua:49:
      ..\FrameXML\BuffFrame.lua:45
Locals:
None
commented
  1. Looks like other people have reported similar problems with MoveAnything so it is just bugged.
  2. I looked at the cdoe for PotButton and it is more than likely being blamed for something another addon is doing.
  3. Do you use any unit frame addons?
  4. Odds are BeanCounter is being blamed for something another addon is doing.
  5. Could be another issue from the MoveAnything addon.
commented

No I use the Blizzard compact raid frames, I've had problems with them in the past and when I stopped healing there wasn't the need to have anything fancier. I figured I'd have less problems with the default ones however it doesn't seem to have worked out that way!

PotButton is just a convenience thing, same button for a health potion of healthstone, if I've got one.

I guess I should look for an alternative to MoveAnything and see if that helps, last time I looked there wasn't one though.

I noticed you've got a fork of TomTom here, which bug did you fix? The POI one?

commented

If you mean being able to click on quests and world quests then yes that is what I fixed.

commented

So I've been trying to eliminate addons tracking the initial trigger down and I'm running out of enabled addons!

I just got this one clicking on the Recap button after dying, perhaps you can make sense of it Grimsbain?

ID: 1
Error occured in: Global
Count: 1
Message: attempt to index a nil value
Debug:
   [C]: ?
   [C]: DeathRecap_GetEvents()
   ...e\AddOns\Blizzard_DeathRecap\Blizzard_DeathRecap.lua:14: DeathRecapFrame_OpenRecap()
   ..\FrameXML\UIParent.lua:966: OpenDeathRecapUI()
   ..\FrameXML\StaticPopup.lua:1359: func()
   ..\FrameXML\StaticPopup.lua:4629: StaticPopup_OnClick()
   [string "*:OnClick"]:1:
      [string "*:OnClick"]:1
Locals:

AddOns:
  Swatter, v7.5.5724 (TasmanianThylacine)
  AngryAssignments, vv1.9.1
  AskMrRobot, v57
  AutoVendor, v51
  Babylonian, v5.1.DEV.332(/embedded)
  BattlePetBreedID, vr164
  BeanCounter, v7.5.5724 (TasmanianThylacine)
  BonusRollPreview, v70300.44-Release
  BrokerEquipment, v70300.29-Release
  BrokerRunSpeed, v1.6
  BrokerWorldQuests, v7.3.40
  Chatter, v1.5.3-3-g85d5fe1
  ChefsHat, v7.0.0.160807
  Clique, vv70200-1.0.0-c208981
  ColorPickerPlus, v
  Configator, v5.1.DEV.431(/embedded)
  CursorCDtimer, v1.3-release 
  DBMAntorusBurningThrone, v
  DBMCore, v7.3.25
  DBMDefaultSkin, v
  DBMStatusBarTimers, v
  DebugLib, v5.1.DEV.337(/embedded)
  EventHorizon, v1.9.20
  EventHorizonDruid, v
  ExtraQuestButton, v70000.8-Release
  FamilyFamiliarHelper, v1.2.0
  GoFish, v7.3.0.1
  GottaGoFast, v26600
  GottaGoFastHistory, v26600
  HandyNotes, vv1.4.15
  HandyNotesKosumoth, v1
  HandyNotesSuramarLeylines, v1
  HandyNotesSuramarTelemancy, v1
  IceHUD, v1.10.16.1
  Informant, v7.5.5724 (TasmanianThylacine)
  LibExtraTip, v5.12.DEV.430(/embedded)
  LibStub, v
  Misspelled, v1.6.3
  NinjaPanel, vv60100-1.0.0
  Postal, vv3.5.8
  PotButton, v
  RCLootCouncil, v2.7.8
  Recap, v4.931
  Rematch, v4.7.9
  SexyMap, vv7.3.0
  Simulationcraft, v1.9.1
  StarCursor, vr2
  Stubby, v7.5.5724 (TasmanianThylacine)
  TipHelper, v5.12.DEV.405(/embedded)
  TomTom, vv70300-1.0.0
  WeakAuras, v2.5.8
  BlizRuntimeLib_enUS v7.3.5.70300 <none>
  (ck=598)```