diff options
author | Martin Poirier <theeth@yahoo.com> | 2008-05-21 14:14:02 +0400 |
---|---|---|
committer | Martin Poirier <theeth@yahoo.com> | 2008-05-21 14:14:02 +0400 |
commit | fc56e8d432e86b80bc42c66e302762dcc35cdcd2 (patch) | |
tree | 3660bc31da8750692eb36998d8d9664d051a7d27 /source/blender/src/editarmature.c | |
parent | 780c971b532f51c21080728d3996d96ab3bb4e07 (diff) |
Bone Extrusion Bug
Extruding from root would incorrectly set the Connected flag when it wasn't needed.
Diffstat (limited to 'source/blender/src/editarmature.c')
-rw-r--r-- | source/blender/src/editarmature.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/src/editarmature.c b/source/blender/src/editarmature.c index 788e27b814f..172e06f5add 100644 --- a/source/blender/src/editarmature.c +++ b/source/blender/src/editarmature.c @@ -2973,6 +2973,8 @@ void extrude_armature(int forked) newbone->parent = ebone; newbone->flag = ebone->flag & BONE_TIPSEL; // copies it, in case mirrored bone + + if (newbone->parent) newbone->flag |= BONE_CONNECTED; } else { VECCOPY(newbone->head, ebone->head); @@ -2980,6 +2982,10 @@ void extrude_armature(int forked) newbone->parent= ebone->parent; newbone->flag= BONE_TIPSEL; + + if (newbone->parent && ebone->flag & BONE_CONNECTED) { + newbone->flag |= BONE_CONNECTED; + } } newbone->weight= ebone->weight; @@ -2993,8 +2999,6 @@ void extrude_armature(int forked) newbone->segments= 1; newbone->layer= ebone->layer; - if (newbone->parent) newbone->flag |= BONE_CONNECTED; - BLI_strncpy (newbone->name, ebone->name, 32); if (flipbone && forked) { // only set if mirror edit |