From 0fbfb60c9a42190728f011b2530a3769211207cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lien=20Sell=C3=A6g?= Date: Fri, 2 Jan 2026 03:07:44 +0100 Subject: [PATCH] fix channel name parsing --- .../Modules/ChannelSync.lua | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/TradeSkillMaster_AuctionDB/Modules/ChannelSync.lua b/TradeSkillMaster_AuctionDB/Modules/ChannelSync.lua index a5c0e5d..f5b1d78 100644 --- a/TradeSkillMaster_AuctionDB/Modules/ChannelSync.lua +++ b/TradeSkillMaster_AuctionDB/Modules/ChannelSync.lua @@ -69,14 +69,18 @@ local function EnsureChannel() end local function GetChannelDisplayName(channelName, channelString, channelNumber, channelBaseName) - if channelBaseName and channelBaseName ~= "" then return channelBaseName end - if channelName and channelName ~= "" then return channelName end + if channelBaseName and channelBaseName ~= "" and not tonumber(channelBaseName) then + return channelBaseName + end + if channelName and channelName ~= "" and not tonumber(channelName) then + return channelName + end if channelString and channelString ~= "" then + local parsed = channelString:match("^%d+%.%s*(.+)$") + if parsed then return parsed end local numeric = tonumber(channelString) - if numeric then - return select(2, GetChannelName(numeric)) - end - return channelString:match("^%d+%.%s*(.+)$") or channelString + if numeric then return select(2, GetChannelName(numeric)) end + return channelString end if channelNumber then return select(2, GetChannelName(channelNumber)) @@ -319,7 +323,7 @@ function ChannelSync:OnChannelMessage(_, msg, source, _, channelString, _, chann local displayName = GetChannelDisplayName(channelName, channelString, channelNumber, channelBaseName) if displayName ~= CHANNEL_NAME then if strsub(msg or "", 1, #COMM_PREFIX) == COMM_PREFIX then - DebugPrint("Prefix received on channel '" .. tostring(displayName or channelNumber or channelString or channelName) .. "' (expected '" .. CHANNEL_NAME .. "').") + DebugPrint("Prefix received; displayName=" .. tostring(displayName) .. " channelNumber=" .. tostring(channelNumber) .. " channelString=" .. tostring(channelString) .. " channelName=" .. tostring(channelName) .. " channelBaseName=" .. tostring(channelBaseName)) end return end