From ce3676ba47ae3d4d674d7365d0f0701ee6c6b4c0 Mon Sep 17 00:00:00 2001 From: Maciej Janicki Date: Mon, 24 May 2021 16:36:53 +0200 Subject: [PATCH] [EGD-6796] Fix excesive ATA command with HSP This commit fixes excesive ATA cmd in HSP by checking call type in ServiceCellular. --- module-services/service-cellular/ServiceCellular.cpp | 4 ++++ .../service-cellular/service-cellular/CellularCall.hpp | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/module-services/service-cellular/ServiceCellular.cpp b/module-services/service-cellular/ServiceCellular.cpp index 8a5334c6262bd7062aeeb3c43746b3c0aa341197..13b81a9da202ce20cd19045ce9e5af035869a71a 100644 --- a/module-services/service-cellular/ServiceCellular.cpp +++ b/module-services/service-cellular/ServiceCellular.cpp @@ -1913,6 +1913,10 @@ void ServiceCellular::apnListChanged(const std::string &value) auto ServiceCellular::handleCellularAnswerIncomingCallMessage(CellularMessage *msg) -> std::shared_ptr { + if (ongoingCall.getType() != CallType::CT_INCOMING) { + return std::make_shared(true); + } + auto channel = cmux->get(CellularMux::Channel::Commands); auto ret = false; if (channel) { diff --git a/module-services/service-cellular/service-cellular/CellularCall.hpp b/module-services/service-cellular/service-cellular/CellularCall.hpp index 4c6909f78ab4cff4b1218bfd9e72cf21a9384a09..eb6975aefe1b06a7485d12ac214092693d3e4bdc 100644 --- a/module-services/service-cellular/service-cellular/CellularCall.hpp +++ b/module-services/service-cellular/service-cellular/CellularCall.hpp @@ -92,6 +92,12 @@ namespace CellularCall { return isActiveCall; } + + [[nodiscard]] CallType getType() const noexcept + { + return call.type; + } + void setCpuSentinel(std::shared_ptr sentinel); }; } // namespace CellularCall