From c5c97aa4374fb8c45e95e43f268ba2019d72de7a Mon Sep 17 00:00:00 2001 From: Skjalf <47818697+Nyeriah@users.noreply.github.com> Date: Mon, 22 Jun 2026 05:08:44 -0300 Subject: [PATCH] fix(WG): bind SkipClasses config to a local before Tokenize Acore::Tokenize returns string_views into its argument and deletes its rvalue overloads, so passing GetOption's temporary std::string directly fails to compile. Store it in a named local so the views stay valid. Co-Authored-By: Claude Opus 4.8 --- src/CFBG.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/CFBG.cpp b/src/CFBG.cpp index 8e566f8..b2d9b97 100644 --- a/src/CFBG.cpp +++ b/src/CFBG.cpp @@ -102,7 +102,8 @@ void CFBG::LoadConfig() _IsEnableWGReapplyOnResurrect = sConfigMgr->GetOption("CFBG.Battlefield.ReapplyOnResurrect.Enable", true); _wgSkipClasses.clear(); - for (auto const& token : Acore::Tokenize(sConfigMgr->GetOption("CFBG.Battlefield.SkipClasses", ""), ',', false)) + std::string const skipClasses = sConfigMgr->GetOption("CFBG.Battlefield.SkipClasses", ""); + for (auto const& token : Acore::Tokenize(skipClasses, ',', false)) { if (Optional playerClass = Acore::StringTo(token)) _wgSkipClasses.insert(*playerClass);