diff --git a/sw/airborne/modules/datalink/missionlib/blocks.c b/sw/airborne/modules/datalink/missionlib/blocks.c index 1f264cb18f..d172ac351a 100644 --- a/sw/airborne/modules/datalink/missionlib/blocks.c +++ b/sw/airborne/modules/datalink/missionlib/blocks.c @@ -50,9 +50,12 @@ void mavlink_send_block(uint16_t seq) static const char *blocks[] = FP_BLOCKS; char block_name[50]; strncpy(block_name, blocks[seq], 49); // String containing the name of the block - uint8_t len = strlen(blocks[seq]); // Length of the block name + uint8_t _terminate = strlen(blocks[seq]); // Length of the block name + if (_terminate > 49) + _terminate = 49; + block_name[_terminate] = 0; mavlink_msg_script_item_send(MAVLINK_COMM_0, mission_mgr.rem_sysid, mission_mgr.rem_compid, - seq, len, block_name); + seq, block_name); MAVLinkSendMessage(); MAVLINK_DEBUG("Sent BLOCK_ITEM message: seq %i, name %s\n", seq, block_name); } else {