diff --git a/include/components/controller.hpp b/include/components/controller.hpp index 79bb96c4..5ea105fc 100644 --- a/include/components/controller.hpp +++ b/include/components/controller.hpp @@ -84,7 +84,6 @@ class controller unique_ptr m_bar; unique_ptr m_ipc; unique_ptr m_confwatch; - unique_ptr> m_command; array, 2> m_queuefd{}; diff --git a/src/components/controller.cpp b/src/components/controller.cpp index e3c250ad..73da2af7 100644 --- a/src/components/controller.cpp +++ b/src/components/controller.cpp @@ -567,15 +567,11 @@ void controller::process_inputdata() { // Run input as command if it's not an input for a module m_log.info("Forwarding command to shell... (input: %s)", cmd); - if (m_command) { - m_log.warn("Terminating previous shell command"); - m_command->terminate(); - } - m_log.info("Executing shell command: %s", cmd); - m_command = command_util::make_command(move(cmd)); - m_command->exec(); - m_command.reset(); + + auto shell_cmd = command_util::make_command(move(cmd)); + shell_cmd->exec(); + shell_cmd.reset(); process_update(true); } catch (const application_error& err) { m_log.err("controller: Error while forwarding input to shell -> %s", err.what());