Tag Multisport activities from FIT files correctly

Also remove unused Workout Code Tag
Partially fix #3211
This commit is contained in:
Ale Martinez
2019-11-22 11:46:29 -03:00
parent 45e73f7d34
commit 5da74f1136

View File

@@ -794,7 +794,7 @@ struct FitFileReaderState
void decodeSession(const FitDefinition &def, int,
const std::vector<FitValue>& values) {
int i = 0;
QString WorkOutCode = NULL;
QString prevSport = rideFile->getTag("Sport", "");
foreach(const FitField &field, def.fields) {
fit_value_t value = values[i++].v;
@@ -1071,7 +1071,10 @@ struct FitFileReaderState
printf("decodeSession field %d: %d bytes, num %d, type %d\n", i, field.size, field.num, field.type );
}
}
rideFile->setTag("Workout Code",WorkOutCode);
// If the Sport changed tag as a Multisport activity
QString newSport = rideFile->getTag("Sport", "");
if (prevSport != "" && newSport != "" && newSport != prevSport)
rideFile->setTag("Sport", "Multisport");
}
void decodeDeviceInfo(const FitDefinition &def, int,