Fix #114216: crash moving "instanced" NLA strips between tracks
Code tried to move such strips (using the same action on equal IDs such as meshes or shapekeys) between tracks multiple times [even though they were actually moved already] which could end up with the wrong track index and things just went downhill from there. So now skip strips we cannot find in the original track, saves us from the whole codepatch about "Moving strip into track in the requested direction". Pull Request: https://projects.blender.org/blender/blender/pulls/114458
This commit is contained in:
parent
2193bd4b89
commit
e7ad3af301
@ -730,7 +730,10 @@ static void recalcData_nla(TransInfo *t)
|
||||
delta_y2 = (int(tdn->h2[1]) / NLACHANNEL_STEP(snla) - tdn->signed_track_index);
|
||||
|
||||
/* Move strip into track in the requested direction. */
|
||||
if (delta_y1 || delta_y2) {
|
||||
/* If we cannot find the strip in the track, this strip has moved tracks already (if multiple
|
||||
* strips using the same action from equal IDs such as meshes or shapekeys are selected) so can
|
||||
* be skipped. */
|
||||
if ((delta_y1 || delta_y2) && BLI_findindex(&tdn->nlt->strips, strip) != -1) {
|
||||
int delta = (delta_y2) ? delta_y2 : delta_y1;
|
||||
|
||||
AnimData *anim_data = BKE_animdata_from_id(tdn->id);
|
||||
|
Loading…
Reference in New Issue
Block a user