Browse Source

Allow dups in param meta data

The ardupilot parameter meta data generator will generate dups when the
parameter is in ifdef'ed code
QGC4.4
Don Gagne 8 years ago
parent
commit
6273c31ca7
  1. 19
      src/FirmwarePlugin/APM/APMParameterMetaData.cc

19
src/FirmwarePlugin/APM/APMParameterMetaData.cc

@ -238,22 +238,19 @@ void APMParameterMetaData::loadParameterFactMetaDataFile(const QString& metaData @@ -238,22 +238,19 @@ void APMParameterMetaData::loadParameterFactMetaDataFile(const QString& metaData
<< "group: " << group;
Q_ASSERT(!rawMetaData);
rawMetaData = new APMFactMetaDataRaw();
if (_vehicleTypeToParametersMap[currentCategory].contains(name)) {
// We can't trust the meta dafa since we have dups
qCWarning(APMParameterMetaDataLog) << "Duplicate parameter found:" << name;
badMetaData = true;
qCDebug(APMParameterMetaDataLog) << "Duplicate parameter found:" << name;
rawMetaData = _vehicleTypeToParametersMap[currentCategory][name];
} else {
qCDebug(APMParameterMetaDataVerboseLog) << "inserting metadata for field" << name;
rawMetaData = new APMFactMetaDataRaw();
_vehicleTypeToParametersMap[currentCategory][name] = rawMetaData;
rawMetaData->name = name;
rawMetaData->group = group;
rawMetaData->shortDescription = shortDescription;
rawMetaData->longDescription = longDescription;
groupMembers[group] << name;
}
qCDebug(APMParameterMetaDataVerboseLog) << "inserting metadata for field" << name;
rawMetaData->name = name;
rawMetaData->group = group;
rawMetaData->shortDescription = shortDescription;
rawMetaData->longDescription = longDescription;
} else {
// We should be getting meta data now
if (xmlState.top() != XmlStateFoundParameter) {

Loading…
Cancel
Save