Merge pull request #4970 from B2krobbery/fix-group-module-leak

fix(bar): ensure exception safety for group module allocation
This commit is contained in:
Alexis Rouillard
2026-04-07 12:39:42 +02:00
committed by GitHub
+5 -3
View File
@@ -545,9 +545,11 @@ void waybar::Bar::getModules(const Factory& factory, const std::string& pos,
if (group_config["modules"].isNull()) {
spdlog::warn("Group definition '{}' has not been found, group will be hidden", ref);
}
auto* group_module = new waybar::Group(id_name, class_name, group_config, vertical);
getModules(factory, ref, group_module);
module = group_module;
auto group_module = std::make_unique<waybar::Group>(
id_name, class_name, group_config, vertical);
getModules(factory, ref, group_module.get());
module = group_module.release();
} else {
module = factory.makeModule(ref, pos);
}