[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53105] trunk/blender/source/blender/ editors/transform/transform_manipulator.c: fix for own error in recent commit with active pose mode, depended on an uninitialized flag.

Campbell Barton ideasman42 at gmail.com
Tue Dec 18 08:38:08 CET 2012


Revision: 53105
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53105
Author:   campbellbarton
Date:     2012-12-18 07:38:02 +0000 (Tue, 18 Dec 2012)
Log Message:
-----------
fix for own error in recent commit with active pose mode, depended on an uninitialized flag.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/transform/transform_manipulator.c

Modified: trunk/blender/source/blender/editors/transform/transform_manipulator.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_manipulator.c	2012-12-18 06:36:35 UTC (rev 53104)
+++ trunk/blender/source/blender/editors/transform/transform_manipulator.c	2012-12-18 07:38:02 UTC (rev 53105)
@@ -148,10 +148,8 @@
 	Bone *bone = pchan->bone;
 
 	if (bone) {
-		if (bone->flag & BONE_TRANSFORM) {
-			calc_tw_center(scene, pchan->pose_head);
-			protectflag_to_drawflags(pchan->protectflag, &rv3d->twdrawflag);
-		}
+		calc_tw_center(scene, pchan->pose_head);
+		protectflag_to_drawflags(pchan->protectflag, &rv3d->twdrawflag);
 	}
 }
 
@@ -503,9 +501,12 @@
 
 		if ((v3d->around == V3D_ACTIVE) && (pchan = BKE_pose_channel_active(ob))) {
 			/* doesn't check selection or visibility intentionally */
-			stats_pose(scene, rv3d, pchan);
-			totsel = 1;
-			ok = TRUE;
+			Bone *bone = pchan->bone;
+			if (bone) {
+				stats_pose(scene, rv3d, pchan);
+				totsel = 1;
+				ok = TRUE;
+			}
 		}
 		else {
 			totsel = count_set_pose_transflags(&mode, 0, ob);
@@ -513,7 +514,10 @@
 			if (totsel) {
 				/* use channels to get stats */
 				for (pchan = ob->pose->chanbase.first; pchan; pchan = pchan->next) {
-					stats_pose(scene, rv3d, pchan);
+					Bone *bone = pchan->bone;
+					if (bone && (bone->flag & BONE_TRANSFORM)) {
+						stats_pose(scene, rv3d, pchan);
+					}
 				}
 				ok = TRUE;
 			}




More information about the Bf-blender-cvs mailing list