[cpp] Fixed incorrect computeHold computations (occurring under rare conditions). Closes #1702.

This commit is contained in:
Harald Csaszar 2020-06-16 21:07:01 +02:00
parent a7e2c9d52a
commit af8691c98e

View File

@ -1031,9 +1031,9 @@ void AnimationState::computeHold(TrackEntry *entry) {
} else { } else {
for (TrackEntry *next = to->_mixingTo; next != NULL; next = next->_mixingTo) { for (TrackEntry *next = to->_mixingTo; next != NULL; next = next->_mixingTo) {
if (next->_animation->hasTimeline(id)) continue; if (next->_animation->hasTimeline(id)) continue;
if (entry->_mixDuration > 0) { if (next->_mixDuration > 0) {
timelineMode[i] = HoldMix; timelineMode[i] = HoldMix;
timelineHoldMix[i] = entry; timelineHoldMix[i] = next;
i++; i++;
goto continue_outer; // continue outer; goto continue_outer; // continue outer;
} }