Fix SIGSEGV
parent
3824b06061
commit
e4cc4b788e
|
@ -106,11 +106,12 @@ void GuiBuilder::deserialize() {
|
|||
void GuiBuilder::build(glm::ivec2 win) {
|
||||
this->win = win;
|
||||
|
||||
clear();
|
||||
clear(false);
|
||||
recursivelyCreate(components, root);
|
||||
}
|
||||
|
||||
void GuiBuilder::clear() {
|
||||
void GuiBuilder::clear(bool clrCallbacks) {
|
||||
if (clrCallbacks) callbacks.clear();
|
||||
root->empty();
|
||||
}
|
||||
|
||||
|
@ -315,5 +316,5 @@ std::vector<std::string> GuiBuilder::splitValue(const std::string &value, unsign
|
|||
}
|
||||
|
||||
GuiBuilder::~GuiBuilder() {
|
||||
clear();
|
||||
clear(true);
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@ public:
|
|||
GuiBuilder(LocalDefs& defs, std::shared_ptr<GUIContainer> root);
|
||||
void setGui(const std::string& menu, const std::map<std::string, std::function<void()>>& callbacks = {});
|
||||
void build(glm::ivec2 win);
|
||||
void clear();
|
||||
void clear(bool clrCallbacks = true);
|
||||
|
||||
~GuiBuilder();
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ void MenuSandbox::setup() {
|
|||
}
|
||||
|
||||
void MenuSandbox::load(const std::string &subgamePath) {
|
||||
container->empty();
|
||||
builder.clear();
|
||||
setup();
|
||||
loadMod(subgamePath + "/menu");
|
||||
DoFileSandboxed("main");
|
||||
|
|
|
@ -20,8 +20,7 @@ namespace MenuApi {
|
|||
|
||||
builder.setGui(gui, callbackMap);
|
||||
}
|
||||
else
|
||||
builder.setGui(gui);
|
||||
else builder.setGui(gui);
|
||||
builder.build(win);
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue