diff --git a/PORTING.md b/PORTING.md index 362c7f9..a3cec8e 100644 --- a/PORTING.md +++ b/PORTING.md @@ -63,18 +63,25 @@ instead. Resolve class inside `OnEnable` / event handler, not as a file-level `local`. -### CLEU argument positions changed -Verify against the 3.3.5 signature: +### CLEU uses the standard WotLK 8-arg signature +CoA 3.3.5 fires `COMBAT_LOG_EVENT_UNFILTERED` with the plain WotLK layout — +**no** `hideCaster`, **no** `sourceRaidFlags`/`destRaidFlags` (those are +Cataclysm+): ``` -(event, timestamp, subevent, hideCaster, - srcGUID, srcName, srcFlags, srcRaidFlags, - destGUID, destName, destFlags, destRaidFlags, +(event, timestamp, subevent, + srcGUID, srcName, srcFlags, + destGUID, destName, destFlags, spellId, spellName, spellSchool, …) ``` -`destFlags` is arg 11, not arg 9. Many retail-era addons get this -wrong. +`destFlags` is **arg 9**, not arg 11. Do NOT insert the modern +`hideCaster`/RaidFlags params — doing so shifts everything right, so a +GUID slot receives a flags *number* and `destGUID:sub(...)` blows up. +This bit us once: the modern layout was wrongly applied to coa-dbm +(`UNIT_DIED` crash) and coa-quartz and had to be reverted. If an upstream +addon's handler reads `(event, ts, subevent, hideCaster, …)`, change it +back to the 8-arg form for CoA. ## Ace3 specifics