[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [47480] branches/meshdata_transfer/source/ blender/editors/object/object_vgroup.c: Bugfix, no longer crashing wehn no source vertex group.

Ove Murberg Henriksen sorayasilvermoon at hotmail.com
Tue Jun 5 22:48:07 CEST 2012


Revision: 47480
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47480
Author:   cyborgmuppet
Date:     2012-06-05 20:48:01 +0000 (Tue, 05 Jun 2012)
Log Message:
-----------
Bugfix, no longer crashing wehn no source vertex group.

Modified Paths:
--------------
    branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c

Modified: branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c
===================================================================
--- branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c	2012-06-05 20:07:01 UTC (rev 47479)
+++ branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c	2012-06-05 20:48:01 UTC (rev 47480)
@@ -396,8 +396,8 @@
 } ReplaceOption;
 
 static EnumPropertyItem vertex_group_option_item[] = {
-	{REPLACE_SINGLE_VERTEX_GROUP, "REPLACE_SINGLE_VERTEX_GROUP", 1, "Single", "Transfer single vertex group."},
-	{REPLACE_ALL_VERTEX_GROUPS, "REPLACE_ALL_VERTEX_GROUPS", 1, "All", "Transfer all vertex groups."},
+	{REPLACE_SINGLE_VERTEX_GROUP, "REPLACE_SINGLE_VERTEX_GROUP", 1, "Single", "Transfer single vertex group from selected to active mesh."},
+	{REPLACE_ALL_VERTEX_GROUPS, "REPLACE_ALL_VERTEX_GROUPS", 1, "All", "Transfer all vertex groups from selected to active mesh."},
 	{0, NULL, 0, NULL, NULL}
 };
 
@@ -3042,12 +3042,12 @@
 	CTX_DATA_BEGIN(C, Object *, ob_slc, selected_editable_objects)
 	{
 
-		if (ob_act != ob_slc) {
+		if (ob_act != ob_slc && ob_slc->defbase.first) {
 			switch (vertex_group_option) {
 
 				case REPLACE_SINGLE_VERTEX_GROUP:
-					if (ED_vgroup_transfer_weight(ob_act, ob_slc, BLI_findlink(&ob_slc->defbase, ob_slc->actdef - 1), scene, method_option, replace_option))
-						change++;
+					if (ED_vgroup_transfer_weight(ob_act, ob_slc,
+												  BLI_findlink(&ob_slc->defbase, ob_slc->actdef - 1), scene, method_option, replace_option)) change++;
 					else fail++;
 					break;
 
@@ -3059,6 +3059,7 @@
 					break;
 			}
 		}
+		else change++;
 	}
 
 	/* Event notifiers for correct display of data */
@@ -3081,9 +3082,9 @@
 void OBJECT_OT_vertex_group_transfer_weight(wmOperatorType *ot)
 {
 	/* identifiers */
-	ot->name = "Transfer weight to selected";
+	ot->name = "Transfer weight";
 	ot->idname = "OBJECT_OT_vertex_group_transfer_weight";
-	ot->description = "Transfers weight from active to selected depending on options";
+	ot->description = "Transfer weight paint to active from selected mesh";
 
 	/* api callbacks */
 	ot->poll = vertex_group_poll;




More information about the Bf-blender-cvs mailing list