diff options
author | Julian Eisel <eiseljulian@gmail.com> | 2015-08-15 15:47:25 +0300 |
---|---|---|
committer | Julian Eisel <eiseljulian@gmail.com> | 2015-08-15 15:48:38 +0300 |
commit | 19cc75d642422f68af1f1aa87790914cad4e20b7 (patch) | |
tree | e5eb9a496e5fe5df0b8ad84c89cd12ae13654426 /source/blender | |
parent | 119cda0a0d258b104b3b1ab0bbd9b26d83ad0a67 (diff) |
Fix T45807: Instant crash adding any modifier to NLA track
Caused by rBcbf936a3327282
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/fmodifier.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/fmodifier.c b/source/blender/blenkernel/intern/fmodifier.c index 6e78d08b508..04c5ddd8ef3 100644 --- a/source/blender/blenkernel/intern/fmodifier.c +++ b/source/blender/blenkernel/intern/fmodifier.c @@ -1389,6 +1389,8 @@ static float eval_fmodifier_influence(FModifier *fcm, float evaltime) * working on the 'global' result of the modified curve, not some localised segment, * so nevaltime gets set to whatever the last time-modifying modifier likes... * - we start from the end of the stack, as only the last one matters for now + * + * Note: *fcu might be NULL */ float evaluate_time_fmodifiers(FModifierStackStorage *storage, ListBase *modifiers, FCurve *fcu, float cvalue, float evaltime) @@ -1399,7 +1401,7 @@ float evaluate_time_fmodifiers(FModifierStackStorage *storage, ListBase *modifie if (ELEM(NULL, modifiers, modifiers->last)) return evaltime; - if (fcu->flag & FCURVE_MOD_OFF) + if (fcu && fcu->flag & FCURVE_MOD_OFF) return evaltime; /* Starting from the end of the stack, calculate the time effects of various stacked modifiers |