forked from bartvdbraak/blender
IPO-Transform Bugfix:
Peach/ideasman_42 report... After transforming sequence IPO's, there were occasional crashes.
This commit is contained in:
parent
5b755bade2
commit
919e5baba8
@ -2738,7 +2738,7 @@ void special_aftertrans_update(TransInfo *t)
|
||||
{
|
||||
Object *ob;
|
||||
Base *base;
|
||||
int redrawipo=0;
|
||||
short redrawipo=0, resetslowpar=1;
|
||||
int cancelled= (t->state == TRANS_CANCEL);
|
||||
|
||||
if(t->spacetype == SPACE_ACTION) {
|
||||
@ -2783,13 +2783,20 @@ void special_aftertrans_update(TransInfo *t)
|
||||
}
|
||||
else if(t->spacetype == SPACE_NLA) {
|
||||
synchronize_action_strips();
|
||||
|
||||
|
||||
/* cleanup */
|
||||
for (base=G.scene->base.first; base; base=base->next)
|
||||
base->flag &= ~(BA_HAS_RECALC_OB|BA_HAS_RECALC_DATA);
|
||||
|
||||
recalc_all_ipos(); // bad
|
||||
}
|
||||
else if(t->spacetype == SPACE_IPO) {
|
||||
// FIXME! is there any code from the old transform_ipo that needs to be added back?
|
||||
|
||||
/* resetting slow-parents isn't really necessary when editing sequence ipo's */
|
||||
if (G.sipo->blocktype==ID_SEQ)
|
||||
resetslowpar= 0;
|
||||
}
|
||||
else if(G.obedit) {
|
||||
if(t->mode==TFM_BONESIZE || t->mode==TFM_BONE_ENVELOPE)
|
||||
allqueue(REDRAWBUTSEDIT, 0);
|
||||
@ -2839,7 +2846,7 @@ void special_aftertrans_update(TransInfo *t)
|
||||
|
||||
if(t->mode==TFM_BONESIZE || t->mode==TFM_BONE_ENVELOPE)
|
||||
allqueue(REDRAWBUTSEDIT, 0);
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
base= FIRSTBASE;
|
||||
@ -2869,7 +2876,8 @@ void special_aftertrans_update(TransInfo *t)
|
||||
allqueue(REDRAWIPO, 0);
|
||||
}
|
||||
|
||||
reset_slowparents();
|
||||
if(resetslowpar)
|
||||
reset_slowparents();
|
||||
|
||||
/* note; should actually only be done for all objects when a lamp is moved... (ton) */
|
||||
if(t->spacetype==SPACE_VIEW3D && G.vd->drawtype == OB_SHADED)
|
||||
|
Loading…
Reference in New Issue
Block a user