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:
authorSergey Sharybin <sergey.vfx@gmail.com>2011-01-02 20:08:25 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2011-01-02 20:08:25 +0300
commit24e80665d8272198783cd6a634cb47a7d289fb1c (patch)
treed7a22936a1514c849e7415ac0e6a6cff1025497c /source/blender/editors/mesh
parent76f0569a862aa56c99cd25977fa2c2061de2a117 (diff)
New customdata layer callback: validate
Used to validate displacement allocation size after face copying to match face vertex and displacement corners count.
Diffstat (limited to 'source/blender/editors/mesh')
-rw-r--r--source/blender/editors/mesh/editmesh.c1
-rw-r--r--source/blender/editors/mesh/editmesh_tools.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/editors/mesh/editmesh.c b/source/blender/editors/mesh/editmesh.c
index 2a66e95bc77..5f7ccd1441b 100644
--- a/source/blender/editors/mesh/editmesh.c
+++ b/source/blender/editors/mesh/editmesh.c
@@ -380,6 +380,7 @@ EditFace *addfacelist(EditMesh *em, EditVert *v1, EditVert *v2, EditVert *v3, Ed
efa->mat_nr= example->mat_nr;
efa->flag= example->flag;
CustomData_em_copy_data(&em->fdata, &em->fdata, example->data, &efa->data);
+ CustomData_em_validate_data(&em->fdata, efa->data, efa->v4 ? 4 : 3);
}
else {
efa->mat_nr= em->mat_nr;
diff --git a/source/blender/editors/mesh/editmesh_tools.c b/source/blender/editors/mesh/editmesh_tools.c
index 7c3262f3747..d00b5ac6070 100644
--- a/source/blender/editors/mesh/editmesh_tools.c
+++ b/source/blender/editors/mesh/editmesh_tools.c
@@ -1519,6 +1519,7 @@ static void facecopy(EditMesh *em, EditFace *source, EditFace *target)
if (target->v4)
interp_weights_face_v3( w[3],v1, v2, v3, v4, target->v4->co);
+ CustomData_em_validate_data(&em->fdata, target->data, target->v4 ? 4 : 3);
CustomData_em_interp(&em->fdata, &source->data, NULL, (float*)w, 1, target->data);
}