From 9ccb906b1c1f0ff311ab02c20bd9eead741f5f89 Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Tue, 21 Jun 2016 10:50:03 -0700 Subject: [PATCH] Correct single transaction checking --- src/MissionManager/MissionManager.cc | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/MissionManager/MissionManager.cc b/src/MissionManager/MissionManager.cc index 636396c913..e7b09d4deb 100644 --- a/src/MissionManager/MissionManager.cc +++ b/src/MissionManager/MissionManager.cc @@ -44,6 +44,11 @@ MissionManager::~MissionManager() void MissionManager::writeMissionItems(const QList& missionItems) { + if (inProgress()) { + qCDebug(MissionManagerLog) << "writeMissionItems called while transaction in progress"; + return; + } + bool skipFirstItem = !_vehicle->firmwarePlugin()->sendHomePositionToVehicle(); _missionItems.clear(); @@ -68,11 +73,6 @@ void MissionManager::writeMissionItems(const QList& missionItems) qCDebug(MissionManagerLog) << "writeMissionItems count:" << _missionItems.count(); - if (inProgress()) { - qCDebug(MissionManagerLog) << "writeMissionItems called while transaction in progress"; - return; - } - // Prime write list for (int i=0; i<_missionItems.count(); i++) { _itemIndicesToWrite << i; @@ -132,6 +132,11 @@ void MissionManager::writeArduPilotGuidedMissionItem(const QGeoCoordinate& gotoC void MissionManager::requestMissionItems(void) { qCDebug(MissionManagerLog) << "requestMissionItems read sequence"; + + if (inProgress()) { + qCDebug(MissionManagerLog) << "requestMissionItems called while transaction in progress"; + return; + } mavlink_message_t message; mavlink_mission_request_list_t request; -- GitLab