[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31904] trunk/blender/source/blender/ editors/armature/editarmature.c: patch [#23221] Merge bone : Within chains : infinite loop
Campbell Barton
ideasman42 at gmail.com
Mon Sep 13 09:30:55 CEST 2010
Revision: 31904
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31904
Author: campbellbarton
Date: 2010-09-13 09:30:11 +0200 (Mon, 13 Sep 2010)
Log Message:
-----------
patch [#23221] Merge bone : Within chains : infinite loop
from Yvon Tanguy (vono)
Modified Paths:
--------------
trunk/blender/source/blender/editors/armature/editarmature.c
Modified: trunk/blender/source/blender/editors/armature/editarmature.c
===================================================================
--- trunk/blender/source/blender/editors/armature/editarmature.c 2010-09-13 06:57:03 UTC (rev 31903)
+++ trunk/blender/source/blender/editors/armature/editarmature.c 2010-09-13 07:30:11 UTC (rev 31904)
@@ -3107,8 +3107,8 @@
/* step 2a: parent children of in-between bones to newbone */
for (chain= chains->first; chain; chain= chain->next) {
/* ick: we need to check if parent of each bone in chain is one of the bones in the */
+ short found= 0;
for (ebo= chain->data; ebo; ebo= ebo->parent) {
- short found= 0;
/* try to find which bone from the list to be removed, is the parent */
for (ebone= end; ebone; ebone= ebone->parent) {
@@ -3124,6 +3124,9 @@
break;
}
}
+ if (found) {
+ break;
+ }
}
/* step 2b: parent child of end to newbone (child from this chain) */
@@ -3135,6 +3138,9 @@
ebone= (ebo == start) ? (NULL) : (ebo->parent);
bone_free(arm, ebo);
}
+
+ newbone->flag |= (BONE_ROOTSEL|BONE_TIPSEL|BONE_SELECTED);
+ ED_armature_sync_selection(arm->edbo);
}
More information about the Bf-blender-cvs
mailing list