diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-04-15 22:07:04 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-04-15 22:07:04 +0400 |
commit | d5c1042ed8af1d68e742b89358e9fff3c928e0ba (patch) | |
tree | f0f9d7d8ad250147ba70ccb9525da28824bff6d8 /source/blender/blenkernel | |
parent | 6e6a6cdf553920c37f22746a0063bf3250f09634 (diff) |
Bugfix: editmode mesh transform was doing slow x-axis mirror
computations with the option disabled. Also small memory usage
optimization for vertex groups.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/intern/customdata.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/customdata.c b/source/blender/blenkernel/intern/customdata.c index d8ce311b5ca..663c94e5155 100644 --- a/source/blender/blenkernel/intern/customdata.c +++ b/source/blender/blenkernel/intern/customdata.c @@ -97,11 +97,16 @@ static void layerCopy_mdeformvert(const void *source, void *dest, for(i = 0; i < count; ++i) { MDeformVert *dvert = (MDeformVert *)((char *)dest + i * size); - MDeformWeight *dw = MEM_callocN(dvert->totweight * sizeof(*dw), - "layerCopy_mdeformvert dw"); - memcpy(dw, dvert->dw, dvert->totweight * sizeof(*dw)); - dvert->dw = dw; + if(dvert->totweight) { + MDeformWeight *dw = MEM_callocN(dvert->totweight * sizeof(*dw), + "layerCopy_mdeformvert dw"); + + memcpy(dw, dvert->dw, dvert->totweight * sizeof(*dw)); + dvert->dw = dw; + } + else + dvert->dw = NULL; } } |