[Bf-blender-cvs] [236d094] master: Fix: NLA Mapping should not apply to keyframes of Driver FCUrves

Joshua Leung noreply at git.blender.org
Mon Dec 14 16:06:27 CET 2015


Commit: 236d094865325413895853609f6af85f01fef70f
Author: Joshua Leung
Date:   Tue Dec 15 01:53:13 2015 +1300
Branches: master
https://developer.blender.org/rB236d094865325413895853609f6af85f01fef70f

Fix: NLA Mapping should not apply to keyframes of Driver FCUrves

===================================================================

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 f41420a..e8f59dd 100644
--- a/source/blender/editors/animation/anim_draw.c
+++ b/source/blender/editors/animation/anim_draw.c
@@ -181,11 +181,17 @@ AnimData *ANIM_nla_mapping_get(bAnimContext *ac, bAnimListElem *ale)
 	/* abort if rendering - we may get some race condition issues... */
 	if (G.is_rendering) return NULL;
 	
-	/* handling depends on the type of animation-context we've got */
-	if (ale) {
-		/* NLA Control Curves occur on NLA strips, and shouldn't be subjected to this kind of mapping */
-		if (ale->type != ANIMTYPE_NLACURVE)
-			return ale->adt;
+	/* apart from strictly keyframe-related contexts, this shouldn't even happen */
+	// XXX: nla and channel here may not be necessary...
+	if (ELEM(ac->datatype, ANIMCONT_ACTION, ANIMCONT_SHAPEKEY, ANIMCONT_DOPESHEET,
+	                       ANIMCONT_FCURVES, ANIMCONT_NLA, ANIMCONT_CHANNEL))
+	{
+		/* handling depends on the type of animation-context we've got */
+		if (ale) {
+			/* NLA Control Curves occur on NLA strips, and shouldn't be subjected to this kind of mapping */
+			if (ale->type != ANIMTYPE_NLACURVE)
+				return ale->adt;
+		}
 	}
 	
 	/* cannot handle... */




More information about the Bf-blender-cvs mailing list