From 8da15cb4098dc31552f5d410ccbd0ed42b1543b5 Mon Sep 17 00:00:00 2001 From: Randy Mackay <rmackay9@yahoo.com> Date: Sat, 27 Sep 2014 11:44:01 +0900 Subject: [PATCH] Copter: check target of set-mode request from GCS Issue discovered and fix contributed by Deadolous --- ArduCopter/GCS_Mavlink.pde | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ArduCopter/GCS_Mavlink.pde b/ArduCopter/GCS_Mavlink.pde index 5d0da2f75..fb02a9b62 100644 --- a/ArduCopter/GCS_Mavlink.pde +++ b/ArduCopter/GCS_Mavlink.pde @@ -884,6 +884,11 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg) mavlink_set_mode_t packet; mavlink_msg_set_mode_decode(msg, &packet); + // exit immediately if this command is not meant for this vehicle + if (mavlink_check_target(packet.target_system, 0)) { + break; + } + // only accept custom modes because there is no easy mapping from Mavlink flight modes to AC flight modes if (packet.base_mode & MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) { if (set_mode(packet.custom_mode)) { -- GitLab