Fix index check in setJointRotation

This commit is contained in:
Atlante45 2015-07-17 15:39:25 -07:00
parent d505527e5a
commit e3f7c33767

View file

@ -270,12 +270,12 @@ void SkeletonModel::applyPalmData(int jointIndex, PalmData& palm) {
} }
void SkeletonModel::updateJointState(int index) { void SkeletonModel::updateJointState(int index) {
if (index > _jointStates.size()) { if (index < 0 && index >= _jointStates.size()) {
return; // bail return; // bail
} }
JointState& state = _jointStates[index]; JointState& state = _jointStates[index];
const FBXJoint& joint = state.getFBXJoint(); const FBXJoint& joint = state.getFBXJoint();
if (joint.parentIndex != -1 && joint.parentIndex <= _jointStates.size()) { if (joint.parentIndex >= 0 && joint.parentIndex < _jointStates.size()) {
const JointState& parentState = _jointStates.at(joint.parentIndex); const JointState& parentState = _jointStates.at(joint.parentIndex);
const FBXGeometry& geometry = _geometry->getFBXGeometry(); const FBXGeometry& geometry = _geometry->getFBXGeometry();
if (index == geometry.leanJointIndex) { if (index == geometry.leanJointIndex) {