From d609fd0169ed442ff20fbf9f4bd187a597418b4f Mon Sep 17 00:00:00 2001 From: Daniel Karbach Date: Sat, 9 Dec 2017 21:48:02 +0100 Subject: [PATCH] fix segfault in creature panel --- src/ui/ui.cpp | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/ui/ui.cpp b/src/ui/ui.cpp index dc17b2b..c3397fe 100644 --- a/src/ui/ui.cpp +++ b/src/ui/ui.cpp @@ -236,19 +236,12 @@ void CreaturePanel::Draw(graphics::Viewport &viewport) noexcept { const creature::Composition &comp = c->GetComposition(); if (comp.size() < components.size()) { + components.clear(); composition->Clear(); - while (comp.size() < components.size()) { - delete components.back(); - components.pop_back(); - } - for (auto l : components) { - composition->Add(l); - } - } else { - while (comp.size() > components.size()) { - components.emplace_back(new Label(assets.fonts.medium)); - composition->Add(components.back()); - } + } + while (comp.size() > components.size()) { + components.emplace_back(new Label(assets.fonts.medium)); + composition->Add(components.back()); } { int i = 0; -- 2.39.2