Commit: b07dcb8fb06f622c8521878df6cbef01d98d6cc4
Author: Campbell Barton
Date:   Sun Aug 27 03:48:18 2017 +1000
Branches: master
https://developer.blender.org/rBb07dcb8fb06f622c8521878df6cbef01d98d6cc4

Missed last commit

===================================================================

M       source/blender/bmesh/intern/bmesh_mesh_conv.c

===================================================================

diff --git a/source/blender/bmesh/intern/bmesh_mesh_conv.c 
b/source/blender/bmesh/intern/bmesh_mesh_conv.c
index 2edc043cb13..7787d704b59 100644
--- a/source/blender/bmesh/intern/bmesh_mesh_conv.c
+++ b/source/blender/bmesh/intern/bmesh_mesh_conv.c
@@ -219,6 +219,11 @@ static BMFace *bm_face_create_from_mpoly(
 
 /**
  * \brief Mesh -> BMesh
+ * \param bm: The mesh to write into, while this is typically a newly created 
BMesh,
+ * merging into existing data is supported.
+ * Note the custom-data layout isn't used.
+ * If more comprehensive merging is needed we should move this into a separate 
function
+ * since this should be kept fast for edit-mode switching and storing undo 
steps.
  *
  * \warning This function doesn't calculate face normals.
  */
@@ -240,8 +245,6 @@ void BM_mesh_bm_from_me(
        float (*keyco)[3] = NULL;
        int totuv, totloops, i;
 
-       /* free custom data */
-
        if (!me || !me->totvert) {
                if (me && is_new) { /*no verts? still copy customdata layout*/
                        CustomData_copy(&me->vdata, &bm->vdata, CD_MASK_BMESH, 
CD_ASSIGN, 0);
@@ -293,18 +296,20 @@ void BM_mesh_bm_from_me(
        }
 
        if (tot_shape_keys) {
-               /* check if we need to generate unique ids for the shapekeys.
-                * this also exists in the file reading code, but is here for
-                * a sanity check */
-               if (!me->key->uidgen) {
-                       fprintf(stderr,
-                               "%s had to generate shape key uid's in a 
situation we shouldn't need to! "
-                               "(bmesh internal error)\n",
-                               __func__);
-
-                       me->key->uidgen = 1;
-                       for (block = me->key->block.first; block; block = 
block->next) {
-                               block->uid = me->key->uidgen++;
+               if (is_new) {
+                       /* check if we need to generate unique ids for the 
shapekeys.
+                        * this also exists in the file reading code, but is 
here for
+                        * a sanity check */
+                       if (!me->key->uidgen) {
+                               fprintf(stderr,
+                                       "%s had to generate shape key uid's in 
a situation we shouldn't need to! "
+                                       "(bmesh internal error)\n",
+                                       __func__);
+
+                               me->key->uidgen = 1;
+                               for (block = me->key->block.first; block; block 
= block->next) {
+                                       block->uid = me->key->uidgen++;
+                               }
                        }
                }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to