From ff2f98d443584155554f0ee368263e4172f1ac9b Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 3 Mar 2026 10:54:35 +0100 Subject: [PATCH] Add WOW_PROJECT_ID guards to version-specific Lua files (#26) * Initial plan * fix: add WOW_PROJECT_ID version guards to prevent cross-version file loading When all version-specific Lua files are loaded (e.g. from a GitHub clone or when the TOC doesn't conditionally load files), the last file's slash command handler overwrites earlier ones. Since RaidLogAuto_Classic.lua is listed last and lacks the mythic command, /rla mythic falls through to the unknown command handler on Retail. Each file now checks WOW_PROJECT_ID at the top and returns early if it doesn't match the expected game version, ensuring only the correct version-specific file initializes. Fixes #25 --- .gitignore | 1 + .luacheckrc | 6 ++++++ RaidLogAuto_Cata.lua | 2 ++ RaidLogAuto_Classic.lua | 2 ++ RaidLogAuto_Mists.lua | 2 ++ RaidLogAuto_Retail.lua | 2 ++ RaidLogAuto_TBC.lua | 2 ++ 7 files changed, 17 insertions(+) diff --git a/.gitignore b/.gitignore index 496bb96..cd0508a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ .env .release/ +lua_install/ # Windows nul diff --git a/.luacheckrc b/.luacheckrc index 58b8c4d..9d98027 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -34,4 +34,10 @@ read_globals = { "print", "SetCVar", "StaticPopup_Show", + "WOW_PROJECT_BURNING_CRUSADE_CLASSIC", + "WOW_PROJECT_CATACLYSM_CLASSIC", + "WOW_PROJECT_CLASSIC", + "WOW_PROJECT_ID", + "WOW_PROJECT_MAINLINE", + "WOW_PROJECT_MISTS_CLASSIC", } diff --git a/RaidLogAuto_Cata.lua b/RaidLogAuto_Cata.lua index 227ddaf..673373f 100644 --- a/RaidLogAuto_Cata.lua +++ b/RaidLogAuto_Cata.lua @@ -7,6 +7,8 @@ -- Supported features: Raid logging ------------------------------------------------------------------------------- +if WOW_PROJECT_ID ~= WOW_PROJECT_CATACLYSM_CLASSIC then return end + local ADDON_NAME, _ = ... RaidLogAutoDB = RaidLogAutoDB or {} diff --git a/RaidLogAuto_Classic.lua b/RaidLogAuto_Classic.lua index 1d274cf..3f50106 100644 --- a/RaidLogAuto_Classic.lua +++ b/RaidLogAuto_Classic.lua @@ -7,6 +7,8 @@ -- Supported features: Raid logging ------------------------------------------------------------------------------- +if WOW_PROJECT_ID ~= WOW_PROJECT_CLASSIC then return end + local ADDON_NAME, _ = ... RaidLogAutoDB = RaidLogAutoDB or {} diff --git a/RaidLogAuto_Mists.lua b/RaidLogAuto_Mists.lua index edd8549..21ecec5 100644 --- a/RaidLogAuto_Mists.lua +++ b/RaidLogAuto_Mists.lua @@ -7,6 +7,8 @@ -- Supported features: Raid logging, Mythic+ logging ------------------------------------------------------------------------------- +if WOW_PROJECT_ID ~= WOW_PROJECT_MISTS_CLASSIC then return end + local ADDON_NAME, _ = ... RaidLogAutoDB = RaidLogAutoDB or {} diff --git a/RaidLogAuto_Retail.lua b/RaidLogAuto_Retail.lua index 7c66561..f23859b 100644 --- a/RaidLogAuto_Retail.lua +++ b/RaidLogAuto_Retail.lua @@ -7,6 +7,8 @@ -- Supported features: Raid logging, Mythic+ logging ------------------------------------------------------------------------------- +if WOW_PROJECT_ID ~= WOW_PROJECT_MAINLINE then return end + local ADDON_NAME, _ = ... RaidLogAutoDB = RaidLogAutoDB or {} diff --git a/RaidLogAuto_TBC.lua b/RaidLogAuto_TBC.lua index 7f03d07..ffa7fb3 100644 --- a/RaidLogAuto_TBC.lua +++ b/RaidLogAuto_TBC.lua @@ -7,6 +7,8 @@ -- Supported features: Raid logging ------------------------------------------------------------------------------- +if WOW_PROJECT_ID ~= WOW_PROJECT_BURNING_CRUSADE_CLASSIC then return end + local ADDON_NAME, _ = ... RaidLogAutoDB = RaidLogAutoDB or {}