Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Bishop <nicholasbishop@gmail.com>2010-06-07 22:50:19 +0400
committerNicholas Bishop <nicholasbishop@gmail.com>2010-06-07 22:50:19 +0400
commit52caf71ee2febf9c697fe66ce36fb9a9597c9a44 (patch)
tree1d11fbcdc8a33c2470d1f41eb6ff2e128be42fd1 /source/blender/editors/object/object_vgroup.c
parent6a8bff9570ca3325e286694586f77d8905e47ea7 (diff)
Bugfix: copying a newly-created vertex group caused a crash.
Diffstat (limited to 'source/blender/editors/object/object_vgroup.c')
-rw-r--r--source/blender/editors/object/object_vgroup.c25
1 files changed, 14 insertions, 11 deletions
diff --git a/source/blender/editors/object/object_vgroup.c b/source/blender/editors/object/object_vgroup.c
index 47390c19742..2235bdd8f2a 100644
--- a/source/blender/editors/object/object_vgroup.c
+++ b/source/blender/editors/object/object_vgroup.c
@@ -129,17 +129,8 @@ int ED_vgroup_give_parray(ID *id, MDeformVert ***dvert_arr, int *dvert_tot)
case ID_ME:
{
Mesh *me = (Mesh *)id;
- *dvert_tot= me->totvert;
-
- if (!me->edit_mesh) {
- int i;
-
- *dvert_arr= MEM_mallocN(sizeof(void*)*me->totvert, "vgroup parray from me");
- for (i=0; i<me->totvert; i++) {
- (*dvert_arr)[i] = me->dvert + i;
- }
- } else {
+ if(me->edit_mesh) {
EditMesh *em = me->edit_mesh;
EditVert *eve;
int i;
@@ -161,8 +152,20 @@ int ED_vgroup_give_parray(ID *id, MDeformVert ***dvert_arr, int *dvert_tot)
(*dvert_arr)[i] = CustomData_em_get(&em->vdata, eve->data, CD_MDEFORMVERT);
}
+ return 1;
+ }
+ else if(me->dvert) {
+ int i;
+
+ *dvert_tot= me->totvert;
+ *dvert_arr= MEM_mallocN(sizeof(void*)*me->totvert, "vgroup parray from me");
+
+ for (i=0; i<me->totvert; i++) {
+ (*dvert_arr)[i] = me->dvert + i;
+ }
+
+ return 1;
}
- return 1;
}
case ID_LT:
{