From 8e79fe68349e295a339bf6bae2b425af071230dc Mon Sep 17 00:00:00 2001 From: Houmgaor Date: Tue, 3 Mar 2026 18:01:20 +0100 Subject: [PATCH] fix(guild): fix variable shadowing causing nil panic in scout list (#171) The else branch redeclared guildInfo with := scoping it to the block, so the outer guildInfo remained nil when reaching ListInvitedCharacters. Restructure the conditional to assign to the existing variable instead. --- server/channelserver/handlers_guild_scout.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/server/channelserver/handlers_guild_scout.go b/server/channelserver/handlers_guild_scout.go index ab7c3d879..252027b3a 100644 --- a/server/channelserver/handlers_guild_scout.go +++ b/server/channelserver/handlers_guild_scout.go @@ -106,11 +106,12 @@ func handleMsgMhfGetGuildScoutList(s *Session, p mhfpacket.MHFPacket) { s.logger.Warn("Failed to get guild for scout list", zap.Error(err)) } - if guildInfo == nil && s.prevGuildID == 0 { - doAckSimpleSucceed(s, pkt.AckHandle, make([]byte, 4)) - return - } else { - guildInfo, err := s.server.guildRepo.GetByID(s.prevGuildID) + if guildInfo == nil { + if s.prevGuildID == 0 { + doAckSimpleSucceed(s, pkt.AckHandle, make([]byte, 4)) + return + } + guildInfo, err = s.server.guildRepo.GetByID(s.prevGuildID) if guildInfo == nil || err != nil { doAckSimpleSucceed(s, pkt.AckHandle, make([]byte, 4)) return