diff options
Diffstat (limited to 'source/blender/editors/transform/transform_ops.c')
-rw-r--r-- | source/blender/editors/transform/transform_ops.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/editors/transform/transform_ops.c b/source/blender/editors/transform/transform_ops.c index f27ea4793fe..c6c9e84a125 100644 --- a/source/blender/editors/transform/transform_ops.c +++ b/source/blender/editors/transform/transform_ops.c @@ -391,6 +391,14 @@ static int transform_modal(bContext *C, wmOperator *op, const wmEvent *event) exit_code = transformEvent(t, event); t->context = NULL; + /* XXX, workaround: active needs to be calculated before transforming, + * since we're not reading from 'td->center' in this case. see: T40241 */ + if (t->tsnap.target == SCE_SNAP_TARGET_ACTIVE) { + if ((t->tsnap.status & TARGET_INIT) == 0) { + t->tsnap.targetSnap(t); + } + } + transformApply(C, t); exit_code |= transformEnd(C, t); |