[Bf-blender-cvs] [3e4a7f4] master: Fix T45275: F-Curve normalization might corrupt animation
Sergey Sharybin
noreply at git.blender.org
Wed Aug 26 15:09:42 CEST 2015
Commit: 3e4a7f4366433842880dc06895d699a54838ad5d
Author: Sergey Sharybin
Date: Wed Aug 26 15:06:21 2015 +0200
Branches: master
https://developer.blender.org/rB3e4a7f4366433842880dc06895d699a54838ad5d
Fix T45275: F-Curve normalization might corrupt animation
===================================================================
M source/blender/editors/animation/anim_draw.c
===================================================================
diff --git a/source/blender/editors/animation/anim_draw.c b/source/blender/editors/animation/anim_draw.c
index 33a5447..ed3d228 100644
--- a/source/blender/editors/animation/anim_draw.c
+++ b/source/blender/editors/animation/anim_draw.c
@@ -289,12 +289,22 @@ static float normalization_factor_get(Scene *scene, FCurve *fcu, short flag, flo
if (flag & ANIM_UNITCONV_NORMALIZE_FREEZE) {
if (r_offset)
*r_offset = fcu->prev_offset;
+ if (fcu->prev_norm_factor == 0.0f) {
+ /* Happens when Auto Normalize was disabled before
+ * any curves were displayed.
+ */
+ return 1.0f;
+ }
return fcu->prev_norm_factor;
}
if (G.moving & G_TRANSFORM_FCURVES) {
if (r_offset)
*r_offset = fcu->prev_offset;
+ if (fcu->prev_norm_factor == 0.0f) {
+ /* Same as above. */
+ return 1.0f;
+ }
return fcu->prev_norm_factor;
}
@@ -342,7 +352,7 @@ static float normalization_factor_get(Scene *scene, FCurve *fcu, short flag, flo
}
offset = -min_coord - range / 2.0f;
}
-
+ BLI_assert(factor != 0.0f);
if (r_offset) {
*r_offset = offset;
}
More information about the Bf-blender-cvs
mailing list