oUF

97.2k Downloads

Error in Private.OnEvent function

ForeverTheGM opened this issue ยท 13 comments

commented

I have no idea what is causing this error. However, I wasn't receiving it prior to the patch.

31x oUF-1.5.11\events.lua:12: attempt to call field "?" (a nil value)
oUF-1.5.11\events.lua:12: in function <oUF\events.lua:10>

commented

This is generally due to a layout registering an event without giving it a proper handler. Just add a nil check to the event handler and print the name of the event to track it down.

I'll leave this open for now in-case it isn't.

commented

I did what you asked, but the event was never printed. I found out when it happens though! It does this in the last few seconds before winning/losing the battle for Tol Barad.

commented

That doesn't really help.

do this:
if(not self[event]) then print(self:GetName(), event, self.unit) end

it should print what event and what frame.

commented

I am also receiving this error which may be related:

 7x Blizzard_CompactRaidFrameContainer.lua:343: CreateFrame: Can"t create "Button" now
 (in C code 
 Blizzard_CompactRaidFrameContainer.lua:343: in function "CompactRaidFrameContainer_GetUnitFrame"
 Blizzard_CompactRaidFrameContainer.lua:315: in function "CompactRaidFrameContainer_AddUnitFrame"
 Blizzard_CompactRaidFrameContainer.lua:255: in function "CompactRaidFrameContainer_AddPlayers"
 Blizzard_CompactRaidFrameContainer.lua:177: in function "CompactRaidFrameContainer_LayoutFrames"
 Blizzard_CompactRaidFrameContainer.lua:131: in function "CompactRaidFrameContainer_TryUpdate"
 Blizzard_CompactRaidFrameContainer.lua:58: in function "CompactRaidFrameContainer_OnEvent"
 (string :"*:OnEvent":1: in function (string :"*:OnEvent":1
 
 Locals:
 self = CompactRaidFrameContainer {
  unitFrameUnusedFunc = (func  @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameContainer.lua:47
  flowSortFunc = (func  @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameManager.lua:678
  groupMode = "flush"
  raidUnits = (table  {}
  frameUpdateList = (table  {}
  flowOrientation = "vertical"
  showBorder = true
  borderFrame = CompactRaidFrameContainerBorderFrame {}
  flowFilterFunc = (func  @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameManager.lua:746
  groupFilterFunc = (func  @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameManager.lua:776
  partyUnits = (table  {}
  flowMaxPrimaryUsed = 71.999993981923
  flowMaxSecondaryUsed = 179.99997401285
  units = (table  {}
  flowPauseUpdates = true
  frameReservations = (table  {}
  flowFrames = (table  {}
  0 = (userdata 
  displayFlaggedMembers = true
 }
 unit = "raid5"
 frameType = "raid"
 info = (table  {
  updateList = "normal"
  setUpFunc = (func  @FrameXML\CompactUnitFrame.lua:882
  mapping = (func  =[C]:-1
 }
 mapping = "0x0600000003BDCCFB"
 frame = nil
 frameCreationSpecifiers = (table  {
  flagged = (table  {}
  raid = (table  {}
  pet = (table  {}
  target = (table  {}
 }
 unitFramesCreated = 6
 applyFunc = (func  @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameContainer.lua:322

Today I took a raid invite while I was in combat and this is what the print spammed me with:

 [Someone] has invited you to join a group.
 Looting changed to Group Loot.
 Loot threshold set to Uncommon.
 You have joined a raid group.
 oUF_GMRaidUnitButton1 UNIT_NAME_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_NAME_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_NAME_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_NAME_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH raid1
 oUF_GMRaidUnitButton1 UNIT_DISPLAYPOWER raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_MAXPOWER raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_MAXHEALTH raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_THREAT_SITUATION_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_THREAT_SITUATION_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_THREAT_SITUATION_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_THREAT_SITUATION_UPDATE raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_THREAT_SITUATION_UPDATE raid1
 oUF_GMRaidUnitButton1 PLAYER_ROLES_ASSIGNED raid1
 oUF_GMRaidUnitButton1 READY_CHECK_FINISHED raid1
 oUF_GMRaidUnitButton1 READY_CHECK_FINISHED raid1
 oUF_GMRaidUnitButton1 UNIT_AURA raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_HEALTH_FREQUENT raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 UNIT_POWER raid1
 oUF_GMRaidUnitButton1 PLAYER_ROLES_ASSIGNED raid1
 oUF_GMRaidUnitButton1 READY_CHECK_FINISHED raid1
 oUF_GMRaidUnitButton1 READY_CHECK_FINISHED raid1
 oUF_GMRaidUnitButton1 UNIT_THREAT_SITUATION_UPDATE raid1
 You have left the raid group.
 oUF_GMRaidUnitButton1 PLAYER_ROLES_ASSIGNED raid1
 oUF_GMRaidUnitButton1 READY_CHECK_FINISHED raid1
commented

I don't know if this is an obscure Blizzard error or a weird interaction with another addon that is to blame. I'm having a tough time reproducing the situation.

commented

i was able to reproduce it while in a raid group, and people joining the raid while in-combat

commented

I'm unable to reproduce this. Could either of you provide me with a layout where this occurs?

I also don't think the CompactRaidFrameContainer error you posted above is related to oUF ForeverTheGM. Unless you do something in your layout that taints it.

commented

Sorry, I clicked the wrong button.

Anyway, here is a link to my automated addon backup page:
http://alteran.net/addon_backup/

AddOns.2011-08-01.7z is the newest.

commented

I'm still unable to recreate this issue with oUF 1.5.12 and oUF_GM from 2011-08-01. =/

commented

Yes, I don't think it was related either. I'm pretty sure it was due to another addon (Skinner).

commented

I'll try and convince someone to help me reproduce this. It's hard to say, but I think that this thread might be describing the same problem.

commented

I tried the following:

  • Be in combat while joining a raid.
  • Be in combat and in a raid while new members join.
  • Play four rounds of AV with two characters, where I would reload UI as soon as two raid spots or more where open.

The error you've posted isn't strictly combat related. It's merely that you have events registered, which don't have a handler. There should really be one error before it, which prevents oUF's :RegisterEvent() from working correctly.

People have generally had this issue earlier when they incorrectly registered events, but I grepping your code didn't really reveal any direct :RegisterEvent() calls. The events reported in your later post also make it look like the health and power element failed to properly register the event function, which seem odd.

commented

Re-open if this still is an issue.