From 18e9e12261fa97aa47daf7d0fb729afd366aa5d6 Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Sat, 18 May 2024 16:35:14 +0100 Subject: Fix an iterator invalidation issue in cs_set and ns_set. --- modules/nickserv/ns_set.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules/nickserv') diff --git a/modules/nickserv/ns_set.cpp b/modules/nickserv/ns_set.cpp index 88d8d97dd..6467ed311 100644 --- a/modules/nickserv/ns_set.cpp +++ b/modules/nickserv/ns_set.cpp @@ -1354,7 +1354,8 @@ public: { if (keep_modes.HasExt(u->Account())) { - for (const auto &[last_mode, last_value] : u->Account()->last_modes) + User::ModeList modes = u->Account()->last_modes; + for (const auto &[last_mode, last_value] : modes) { UserMode *um = ModeManager::FindUserModeByName(last_mode); /* if the null user can set the mode, then it's probably safe */ -- cgit