From 482fcd3b8c795baa55060cd99ba243b5be8a2397 Mon Sep 17 00:00:00 2001 From: David Capello Date: Tue, 7 Apr 2020 10:56:39 -0300 Subject: [PATCH] Fix crash when loading plugins from CLI and compilation when !ENABLE_UI --- src/app/extensions.cpp | 2 ++ src/app/script/plugin_class.cpp | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/app/extensions.cpp b/src/app/extensions.cpp index 5ae0f3ec3..09ea7510c 100644 --- a/src/app/extensions.cpp +++ b/src/app/extensions.cpp @@ -643,8 +643,10 @@ void Extension::exitScripts() ASSERT(cmd); if (cmd) { +#ifdef ENABLE_UI // TODO use a signal AppMenus::instance()->removeMenuItemWithCommand(cmd); +#endif // ENABLE_UI cmds->remove(cmd); diff --git a/src/app/script/plugin_class.cpp b/src/app/script/plugin_class.cpp index 676193271..c05a18244 100644 --- a/src/app/script/plugin_class.cpp +++ b/src/app/script/plugin_class.cpp @@ -128,14 +128,17 @@ int Plugin_newCommand(lua_State* L) Commands::instance()->add(cmd); plugin->ext->addCommand(id); +#ifdef ENABLE_UI // Add a new menu option if the "group" is defined - if (!group.empty()) { + if (!group.empty() && + App::instance()->isGui()) { // On CLI menus do not make sense if (auto appMenus = AppMenus::instance()) { std::unique_ptr menuItem(new AppMenuItem(title, cmd)); appMenus->addMenuItemIntoGroup( group, title, std::move(menuItem)); } } +#endif // ENABLE_UI } else { lua_pop(L, 1);