fix: setTags compilation err

This commit is contained in:
ze0s 2025-01-21 16:37:50 +00:00
commit b63f57435c

View file

@ -1482,15 +1482,16 @@ void TorrentsController::setTagsAction()
const QStringList hashes {params()[u"hashes"_s].split(u'|', Qt::SkipEmptyParts)}; const QStringList hashes {params()[u"hashes"_s].split(u'|', Qt::SkipEmptyParts)};
const QStringList tags {params()[u"tags"_s].split(u',', Qt::SkipEmptyParts)}; const QStringList tags {params()[u"tags"_s].split(u',', Qt::SkipEmptyParts)};
TagSet newTags {tags.begin(), tags.end()}; const TagSet newTags {tags.begin(), tags.end()};
applyToTorrents(hashes, [newTags](BitTorrent::Torrent *const torrent) applyToTorrents(hashes, [&newTags](BitTorrent::Torrent *const torrent)
{ {
TagSet tmpTags {newTags};
for (const Tag &tag : asConst(torrent->tags())) for (const Tag &tag : asConst(torrent->tags()))
{ {
if (newTags.erase(tag) == 0) if (tmpTags.erase(tag) == 0)
torrent->removeTag(tag); torrent->removeTag(tag);
} }
for (const Tag &tag : newTags) for (const Tag &tag : tmpTags)
torrent->addTag(tag); torrent->addTag(tag);
}); });
} }