From: Romain Forlot Date: Mon, 17 Jul 2017 08:57:45 +0000 (+0200) Subject: Check whether a signal is writable before sending X-Git-Tag: 5.0.2~47 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=61adb20886a9cc611a8b48a86998cfeaad31d7b7;hp=1a90edea7d3d45da772c590d642c0093839cc91f;p=apps%2Fagl-service-can-low-level.git Check whether a signal is writable before sending Change-Id: Id04d04a07e43738f7379e33fa7c6022eaa426343 Signed-off-by: Romain Forlot --- diff --git a/low-can-binding/binding/low-can-cb.cpp b/low-can-binding/binding/low-can-cb.cpp index cac9fc4e..be2985fb 100644 --- a/low-can-binding/binding/low-can-cb.cpp +++ b/low-can-binding/binding/low-can-cb.cpp @@ -427,9 +427,14 @@ static int write_signal(const std::string& name, uint64_t value) { for(const auto& sig: sf.can_signals) { - cf = encoder_t::build_frame(sig, value); - const std::string bus_name = sig->get_message()->get_bus_name(); - rc = send_frame(bus_name, cf); + if(sig->get_writable()) + { + cf = encoder_t::build_frame(sig, value); + const std::string bus_name = sig->get_message()->get_bus_name(); + rc = send_frame(bus_name, cf); + } + else + {AFB_NOTICE("%s isn't writable. Message not sent.", sig->get_name().c_str());} } }