Browse Source

Fix deadlock

QGC4.4
Don Gagne 10 years ago
parent
commit
bf93381950
  1. 4
      src/FactSystem/ParameterLoader.cc

4
src/FactSystem/ParameterLoader.cc

@ -253,6 +253,8 @@ void ParameterLoader::_parameterUpdate(int uasId, int componentId, QString param @@ -253,6 +253,8 @@ void ParameterLoader::_parameterUpdate(int uasId, int componentId, QString param
connect(fact, &Fact::_containerRawValueChanged, this, &ParameterLoader::_valueUpdated);
}
_dataMutex.unlock();
Q_ASSERT(_mapParameterName2Variant[componentId].contains(parameterName));
Fact* fact = _mapParameterName2Variant[componentId][parameterName].value<Fact*>();
@ -263,8 +265,6 @@ void ParameterLoader::_parameterUpdate(int uasId, int componentId, QString param @@ -263,8 +265,6 @@ void ParameterLoader::_parameterUpdate(int uasId, int componentId, QString param
_vehicle->firmwarePlugin()->addMetaDataToFact(fact, _vehicle->vehicleType());
}
_dataMutex.unlock();
if (waitingParamCount == 0) {
// Now that we know vehicle is up to date persist
_saveToEEPROM();

Loading…
Cancel
Save