diff options
-rw-r--r-- | indra/newview/llskinningutil.cpp | 7 |
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) { |