diff --git a/source/blender/src/editnla.c b/source/blender/src/editnla.c index 4b3f4cca4b4..a3d46c19bc7 100644 --- a/source/blender/src/editnla.c +++ b/source/blender/src/editnla.c @@ -825,12 +825,14 @@ void transform_nlachannel_keys(int mode, int dummy) i= fullselect_ipo_keys(chan->ipo); if(i) base->flag |= BA_HAS_RECALC_OB|BA_HAS_RECALC_DATA; tvtot+=i; - } - - /* Check action constraint ipos */ - for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { - if (EDITABLE_CONCHAN(conchan)) - tvtot+=fullselect_ipo_keys(conchan->ipo); + + /* Check action constraint ipos */ + if (EXPANDED_ACHAN(chan)) { + for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { + if (EDITABLE_CONCHAN(conchan)) + tvtot+=fullselect_ipo_keys(conchan->ipo); + } + } } } } @@ -877,13 +879,16 @@ void transform_nlachannel_keys(int mode, int dummy) /* can include - no selected strip is action */ if(strip==NULL) { for (chan=base->object->action->chanbase.first; chan; chan=chan->next){ - if (EDITABLE_ACHAN(chan)) + if (EDITABLE_ACHAN(chan)) { tvtot=add_trans_ipo_keys(chan->ipo, tv, tvtot); - /* Manipulate action constraint ipos */ - for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { - if (EDITABLE_CONCHAN(conchan)) - tvtot=add_trans_ipo_keys(conchan->ipo, tv, tvtot); + /* Manipulate action constraint ipos */ + if (EXPANDED_ACHAN(chan)) { + for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { + if (EDITABLE_CONCHAN(conchan)) + tvtot=add_trans_ipo_keys(conchan->ipo, tv, tvtot); + } + } } } }