From c967679bb848ac3c80f216de13cc0a4debcb655a Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 16 Jan 2007 09:18:01 +0000 Subject: == Armature Joining Bugfixes == Since 2.40 (and a few pre-releases around then), armature joining has not worked correctly. Constraints and other attributes of bones in posemode (IK DOF limits, transform locks, custom shapes, etc.) were not preserved on the armature(s) that were joined onto the last selected armature. This was a serious production problem, as it meant that you could not easily add pre-made rig segments and merge them with the rest of your rigs without having to redo all the constraints. After a few attempts, I've finally managed to fix this. All constraints and parenting relationships get name corrections for the post- merge armatures. Action channels in actions don't really get any corrections yet unless the action is being used by an Action Constraint. Python-API people: beware, I may have broken something in this commit. --- source/blender/python/api2_2x/Armature.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source/blender/python/api2_2x/Armature.c') diff --git a/source/blender/python/api2_2x/Armature.c b/source/blender/python/api2_2x/Armature.c index 2ccf0b7b774..4aab0515587 100644 --- a/source/blender/python/api2_2x/Armature.c +++ b/source/blender/python/api2_2x/Armature.c @@ -271,7 +271,7 @@ static int BonesDict_SetItem(BPy_BonesDict *self, PyObject *key, PyObject *value //create a new editbone editbone = MEM_callocN(sizeof(EditBone), "eBone"); BLI_strncpy(editbone->name, key_str, 32); - unique_editbone_name(editbone->name); + unique_editbone_name(NULL, editbone->name); editbone->dist = ((BPy_EditBone*)value)->dist; editbone->ease1 = ((BPy_EditBone*)value)->ease1; editbone->ease2 = ((BPy_EditBone*)value)->ease2; -- cgit v1.2.3