Error in Private.OnEvent function
ForeverTheGM opened this issue ยท 13 comments
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>
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.
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.
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.
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
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.
i was able to reproduce it while in a raid group, and people joining the raid while in-combat
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.
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.
I'm still unable to recreate this issue with oUF 1.5.12 and oUF_GM from 2011-08-01. =/
Yes, I don't think it was related either. I'm pretty sure it was due to another addon (Skinner).
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.
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.