Skip to content
Extraits de code Groupes Projets
Valider 63383fdd rédigé par torque's avatar torque Validation de Thomas Goyne
Parcourir les fichiers

Perform extradata deduplication on add.

Checks all existing extradata keys and values to ensure that the set
that is being added doesn't already exist.
parent 74bad869
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -229,8 +229,13 @@ void AssFile::Sort(EntryList<AssDialogue> &lst, CompFunc comp, std::set<AssDialo ...@@ -229,8 +229,13 @@ void AssFile::Sort(EntryList<AssDialogue> &lst, CompFunc comp, std::set<AssDialo
} }
} }
uint32_t AssFile::AddExtradata(std::string const& key, std::string const& value) { uint32_t AssFile::AddExtradata(std::string const& key, std::string const& value) {
for (auto const& data : Extradata) {
// perform brute-force deduplication by simple key and value comparison
if (key == data.second.first && value == data.second.second) {
return data.first;
}
}
// next_extradata_id must not exist // next_extradata_id must not exist
assert(Extradata.find(next_extradata_id) == Extradata.end()); assert(Extradata.find(next_extradata_id) == Extradata.end());
Extradata[next_extradata_id] = {key, value}; Extradata[next_extradata_id] = {key, value};
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter