From 4dd03eebc223726be1ca3a2f06217fe8a22b9c20 Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Fri, 29 May 2026 10:43:54 +0200 Subject: [PATCH] fix(Types): build custom-class specs via LOCALIZED_CLASS_NAMES_MALE fallback --- WeakAuras/Types.lua | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/WeakAuras/Types.lua b/WeakAuras/Types.lua index 214b6e3..db21db5 100644 --- a/WeakAuras/Types.lua +++ b/WeakAuras/Types.lua @@ -3842,6 +3842,28 @@ do end table.sort(classOrder) end + else + -- CoA: CLASS_SORT_ORDER only contains the 11 vanilla classes. Append any + -- keys present in LOCALIZED_CLASS_NAMES_MALE that are not already in the + -- list (custom classes such as Witchdoctor, Templar, etc.). Build a fresh + -- local copy — do NOT mutate the global CLASS_SORT_ORDER. + if LOCALIZED_CLASS_NAMES_MALE then + local inOrder = {} + for _, class in ipairs(classOrder) do + inOrder[class] = true + end + classOrder = {unpack(classOrder)} + local extra = {} + for class in pairs(LOCALIZED_CLASS_NAMES_MALE) do + if not inOrder[class] then + extra[#extra + 1] = class + end + end + table.sort(extra) + for _, class in ipairs(extra) do + classOrder[#classOrder + 1] = class + end + end end if C_ClassInfo and C_ClassInfo.GetAllSpecs and C_ClassInfo.GetSpecInfo then