From 354b47aacad31a957f8839baf1f46553ae45498f Mon Sep 17 00:00:00 2001 From: Tomasz Sobkowiak Date: Mon, 8 Mar 2021 11:35:03 +0100 Subject: [PATCH] [EGD-6004] Change application messages stack size to 6kB Tests done for over 100 threads and 1000 messages in overall Stack size during tests didn't go over 5kb --- .../application-messages/ApplicationMessages.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/module-apps/application-messages/ApplicationMessages.cpp b/module-apps/application-messages/ApplicationMessages.cpp index ebc5b0e40ce659ea6eb45a40f2c2f3e33d479ef2..9f7a7c5d5ad6def028970de4b41c5127617fe576 100644 --- a/module-apps/application-messages/ApplicationMessages.cpp +++ b/module-apps/application-messages/ApplicationMessages.cpp @@ -39,8 +39,10 @@ namespace app { + static constexpr auto messagesStackDepth = 1024 * 6; // 6Kb stack size + ApplicationMessages::ApplicationMessages(std::string name, std::string parent, StartInBackground startInBackground) - : Application(name, parent, startInBackground, 4096 * 2), AsyncCallbackReceiver{this} + : Application(name, parent, startInBackground, messagesStackDepth), AsyncCallbackReceiver{this} { bus.channels.push_back(sys::BusChannel::ServiceDBNotifications); addActionReceiver(manager::actions::CreateSms, [this](auto &&data) { @@ -277,9 +279,9 @@ namespace app bool ApplicationMessages::searchEmpty(const std::string &query) { gui::DialogMetadata meta; - meta.icon = "search_big"; - meta.text = utils::localize.get("app_messages_thread_no_result"); - meta.title = utils::localize.get("common_results_prefix") + query; + meta.icon = "search_big"; + meta.text = utils::localize.get("app_messages_thread_no_result"); + meta.title = utils::localize.get("common_results_prefix") + query; auto data = std::make_unique(meta); data->ignoreCurrentWindowOnStack = true; switchWindow(gui::name::window::dialog, std::make_unique(meta)); @@ -295,9 +297,9 @@ namespace app bool ApplicationMessages::showNotification(std::function action, bool ignoreCurrentWindowOnStack) { gui::DialogMetadata meta; - meta.icon = "info_big_circle_W_G"; - meta.text = utils::localize.get("app_messages_no_sim"); - meta.action = action; + meta.icon = "info_big_circle_W_G"; + meta.text = utils::localize.get("app_messages_no_sim"); + meta.action = action; auto switchData = std::make_unique(meta); switchData->ignoreCurrentWindowOnStack = ignoreCurrentWindowOnStack; switchWindow(gui::name::window::dialog_confirm, std::move(switchData));