summaryrefslogtreecommitdiff
path: root/indra/newview/llskinningutil.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2021-04-28 19:46:56 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2021-04-28 19:48:48 +0300
commit8ce21268a1723738aaded551812d71e5ec29c707 (patch)
tree00b6e13907c444f8e509ed5e6d250f59bef47d1c /indra/newview/llskinningutil.cpp
parentd91f3ab6ae8e94a96c1173efad50015b721bee73 (diff)
SL-15181 Crash at LLSkinningUtil::initSkinningMatrixPalette
Diffstat (limited to 'indra/newview/llskinningutil.cpp')
-rw-r--r--indra/newview/llskinningutil.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/newview/llskinningutil.cpp b/indra/newview/llskinningutil.cpp
index f325315933..e02b21f036 100644
--- a/indra/newview/llskinningutil.cpp
+++ b/indra/newview/llskinningutil.cpp
@@ -131,7 +131,12 @@ void LLSkinningUtil::initSkinningMatrixPalette(
initJointNums(const_cast<LLMeshSkinInfo*>(skin), avatar);
for (U32 j = 0; j < count; ++j)
{
- LLJoint *joint = avatar->getJoint(skin->mJointNums[j]);
+ S32 joint_num = skin->mJointNums[j];
+ LLJoint *joint = NULL;
+ if (joint_num >= 0 && joint_num < LL_CHARACTER_MAX_ANIMATED_JOINTS)
+ {
+ joint = avatar->getJoint(joint_num);
+ }
llassert(joint);
if (joint)
{