From 49154905b198c81e42d62eb5ad36841651e13034 Mon Sep 17 00:00:00 2001 From: Martchus Date: Sat, 30 Jan 2021 19:21:18 +0100 Subject: [PATCH] Improve code in Mp4Tag::setValues() --- mp4/mp4tag.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/mp4/mp4tag.cpp b/mp4/mp4tag.cpp index a1d574f..713e3c8 100644 --- a/mp4/mp4tag.cpp +++ b/mp4/mp4tag.cpp @@ -263,7 +263,7 @@ bool Mp4Tag::setValue(KnownField field, const TagValue &value) bool Mp4Tag::setValues(KnownField field, const std::vector &values) { - const Mp4ExtendedFieldId extendedId(field); + const auto extendedId = Mp4ExtendedFieldId(field); if (extendedId) { auto valuesIterator = values.cbegin(); auto range = fields().equal_range(Mp4TagAtomIds::Extended); @@ -284,13 +284,11 @@ bool Mp4Tag::setValues(KnownField field, const std::vector &values) } } for (; valuesIterator != values.cend(); ++valuesIterator) { - Mp4TagField tagField(Mp4TagAtomIds::Extended, *valuesIterator); - tagField.setMean(extendedId.mean); - tagField.setName(extendedId.name); - fields().insert(std::make_pair(Mp4TagAtomIds::Extended, move(tagField))); + fields().emplace(std::piecewise_construct, std::forward_as_tuple(Mp4TagAtomIds::Extended), + std::forward_as_tuple(extendedId.mean, extendedId.name, *valuesIterator)); } for (; range.first != range.second; ++range.first) { - range.first->second.setValue(TagValue()); + range.first->second.clearValue(); } } return FieldMapBasedTag::setValues(field, values);