diff --git a/src/comm/LinkManager.cc b/src/comm/LinkManager.cc index a48e902ca04808c7fdf56937ec380f567686335c..78caa91cc8cb14fb153cc75f0c3dc3213774ca2a 100644 --- a/src/comm/LinkManager.cc +++ b/src/comm/LinkManager.cc @@ -409,6 +409,15 @@ void LinkManager::loadLinkConfigurationList() } emit linkConfigurationChanged(); } + + // Debug buids always add MockLink automatically +#ifdef QT_DEBUG + MockConfiguration* pMock = new MockConfiguration("Mock Link"); + pMock->setDynamic(true); + addLinkConfiguration(pMock); + emit linkConfigurationChanged(); +#endif + // Enable automatic PX4 hunting _configurationsLoaded = true; } diff --git a/src/comm/MockLink.cc b/src/comm/MockLink.cc index d14fc91521a53ca8e73697a7a18d20595d3a7452..cbd6d176413e69571a23a05428e49b29ee149345 100644 --- a/src/comm/MockLink.cc +++ b/src/comm/MockLink.cc @@ -503,11 +503,14 @@ void MockLink::_handleParamSet(const mavlink_message_t& msg) Q_ASSERT(request.target_system == _vehicleSystemId); int componentId = request.target_component; - + // Param may not be null terminated if exactly fits char paramId[MAVLINK_MSG_PARAM_SET_FIELD_PARAM_ID_LEN + 1]; + paramId[MAVLINK_MSG_PARAM_SET_FIELD_PARAM_ID_LEN] = 0; strncpy(paramId, request.param_id, MAVLINK_MSG_PARAM_SET_FIELD_PARAM_ID_LEN); + qCDebug(MockLinkLog) << "_handleParamSet" << componentId << paramId << request.param_type; + Q_ASSERT(_mapParamName2Value.contains(componentId)); Q_ASSERT(_mapParamName2Value[componentId].contains(paramId)); Q_ASSERT(request.param_type == _mapParamName2MavParamType[paramId]);