diff --git a/components/lua_ui/element.cpp b/components/lua_ui/element.cpp index bd76ba3207..4fe9349b9e 100644 --- a/components/lua_ui/element.cpp +++ b/components/lua_ui/element.cpp @@ -216,12 +216,13 @@ namespace LuaUi void Element::destroy() { + if (mRoot) + { + destroyWidget(mRoot); + mRoot = nullptr; + mLayout = sol::make_object(mLayout.lua_state(), sol::nil); + } sAllElements.erase(this); - if (!mRoot) - return; - destroyWidget(mRoot); - mRoot = nullptr; - mLayout = sol::make_object(mLayout.lua_state(), sol::nil); } void Element::attachToWidget(WidgetExtension* w)