1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-18 18:40:06 +00:00

Convert IDs of loaded records to lower case in MWWorld::Store

This commit is contained in:
Stanislav Bas 2015-07-09 15:17:38 +03:00
parent 897a52cdda
commit 00bf87b561

View File

@ -217,9 +217,9 @@ namespace MWWorld
void load(ESM::ESMReader &esm) { void load(ESM::ESMReader &esm) {
T record; T record;
record.load(esm); record.load(esm);
Misc::StringUtils::toLower(record.mId);
std::string idLower = Misc::StringUtils::lowerCase(record.mId); std::pair<typename Static::iterator, bool> inserted = mStatic.insert(std::make_pair(record.mId, record));
std::pair<typename Static::iterator, bool> inserted = mStatic.insert(std::make_pair(idLower, record));
if (inserted.second) if (inserted.second)
mShared.push_back(&inserted.first->second); mShared.push_back(&inserted.first->second);
@ -359,6 +359,7 @@ namespace MWWorld
template <> template <>
inline void Store<ESM::Dialogue>::load(ESM::ESMReader &esm) { inline void Store<ESM::Dialogue>::load(ESM::ESMReader &esm) {
// The original letter case of a dialogue ID is saved, because it's printed
ESM::Dialogue dialogue; ESM::Dialogue dialogue;
dialogue.load(esm); dialogue.load(esm);
@ -380,9 +381,9 @@ namespace MWWorld
inline void Store<ESM::Script>::load(ESM::ESMReader &esm) { inline void Store<ESM::Script>::load(ESM::ESMReader &esm) {
ESM::Script script; ESM::Script script;
script.load(esm); script.load(esm);
Misc::StringUtils::toLower(script.mId);
std::string idLower = Misc::StringUtils::toLower(script.mId); std::pair<typename Static::iterator, bool> inserted = mStatic.insert(std::make_pair(script.mId, script));
std::pair<typename Static::iterator, bool> inserted = mStatic.insert(std::make_pair(idLower, script));
if (inserted.second) if (inserted.second)
mShared.push_back(&inserted.first->second); mShared.push_back(&inserted.first->second);
else else
@ -396,9 +397,9 @@ namespace MWWorld
{ {
ESM::StartScript script; ESM::StartScript script;
script.load(esm); script.load(esm);
Misc::StringUtils::toLower(script.mId);
std::string idLower = Misc::StringUtils::toLower(script.mId); std::pair<typename Static::iterator, bool> inserted = mStatic.insert(std::make_pair(script.mId, script));
std::pair<typename Static::iterator, bool> inserted = mStatic.insert(std::make_pair(idLower, script));
if (inserted.second) if (inserted.second)
mShared.push_back(&inserted.first->second); mShared.push_back(&inserted.first->second);
else else