Stanzilla / WoWUIBugs

World of Warcraft UI Bug Tracker
153 stars 7 forks source link

Project ID constant can be nil in early load #566

Closed Meorawr closed 1 month ago

Meorawr commented 1 month ago

With the FrameXML restructuring in 10.2.7 and 11.0, it's possible for addons to run into a circumstance where the WOW_PROJECT_ID constant is nil if the Blizzard_BNet addon hasn't yet been loaded.

An easy way to trigger this is to have an addon that has a LoadWith directive naming any other Blizzard addon that isn't flagged as LoadFirst, and itself is naturally sequenced before Blizzard_BNet. The attached test case provides such an addon that is set to load with Blizzard_CompactRaidFrames.

WoWUIBugs_EarlyLoadTest.zip

This issue only affects 10.2.7 and 11.0.0. Classic clients cannot be impacted, as their WOW_PROJECT_ID constants are assigned as part of Blizzard_FrameXMLBase, which is (implicitly, by way of a dependent addon) LoadFirst.

Meorawr commented 1 month ago

Implicitly fixed in 10.2.7.54630 as Blizzard_BNet is now a dependency of Blizzard_ChatFrame, which is itself a dependency of a LoadFirst addon.