From d5dd194b0194be0c194d20dddea34d97b2167351 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Mon, 1 Jul 2024 00:14:06 +0200 Subject: [PATCH] downstream: fix WHO membership prefix order without server-specific flags Gregory noticed that my last-minute edit was wrong [1]. Indeed, when i == -1, that means that Flags only contains 'H'/'G'/'*' and nothing else. We need to append the membership prefix in that case. [1]: https://lists.sr.ht/~emersion/soju-dev/%3C20240630213249.13061-2-greg@gpanders.com%3E#%3CD2DP18U4PP40.DBYWGA8WM2KN@gpanders.com%3E Fixes: ae203388e17c ("Fix channel membership prefixes in cached WHO replies") Reported-by: Gregory Anders --- downstream.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/downstream.go b/downstream.go index 0c02201..bcc2f55 100644 --- a/downstream.go +++ b/downstream.go @@ -2243,7 +2243,7 @@ func (dc *downstreamConn) handleMessageRegistered(ctx context.Context, msg *irc. }) if i == -1 { - info.Flags = prefixes + info.Flags + info.Flags += prefixes } else { info.Flags = info.Flags[:i] + prefixes + info.Flags[i:] }