From f4d54addffa7e6101a5c293b489cf0052341b43e Mon Sep 17 00:00:00 2001 From: Rye Mutt <rye@alchemyviewer.org> Date: Wed, 14 Jul 2021 17:43:46 -0400 Subject: [PATCH] Reduce string operations in polymorph targets --- indra/llappearance/llpolymesh.cpp | 6 ++---- indra/llappearance/llpolymesh.h | 2 +- indra/llappearance/llpolymorph.cpp | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/indra/llappearance/llpolymesh.cpp b/indra/llappearance/llpolymesh.cpp index bf015f28571..1c46f0a2b40 100644 --- a/indra/llappearance/llpolymesh.cpp +++ b/indra/llappearance/llpolymesh.cpp @@ -991,14 +991,12 @@ void LLPolyMesh::initializeForMorph() //----------------------------------------------------------------------------- // getMorphData() //----------------------------------------------------------------------------- -LLPolyMorphData* LLPolyMesh::getMorphData(const std::string& morph_name) +LLPolyMorphData* LLPolyMesh::getMorphData(const std::string_view morph_name) { if (!mSharedData) return NULL; - for (LLPolyMeshSharedData::morphdata_list_t::iterator iter = mSharedData->mMorphData.begin(); - iter != mSharedData->mMorphData.end(); ++iter) + for (LLPolyMorphData* morph_data : mSharedData->mMorphData) { - LLPolyMorphData *morph_data = *iter; if (morph_data->getName() == morph_name) { return morph_data; diff --git a/indra/llappearance/llpolymesh.h b/indra/llappearance/llpolymesh.h index 479a1d2a029..048536e21ea 100644 --- a/indra/llappearance/llpolymesh.h +++ b/indra/llappearance/llpolymesh.h @@ -306,7 +306,7 @@ class LLPolyMesh return mSharedData->mJointNames; } - LLPolyMorphData* getMorphData(const std::string& morph_name); + LLPolyMorphData* getMorphData(std::string_view morph_name); // void removeMorphData(LLPolyMorphData *morph_target); // void deleteAllMorphData(); diff --git a/indra/llappearance/llpolymorph.cpp b/indra/llappearance/llpolymorph.cpp index 072efeeee34..c8837f3ae51 100644 --- a/indra/llappearance/llpolymorph.cpp +++ b/indra/llappearance/llpolymorph.cpp @@ -378,7 +378,7 @@ BOOL LLPolyMorphTarget::setInfo(LLPolyMorphTargetInfo* info) } } - std::string morph_param_name = getInfo()->mMorphName; + std::string_view morph_param_name = getInfo()->mMorphName; mMorphData = mMesh->getMorphData(morph_param_name); if (!mMorphData) -- GitLab