[Bf-blender-cvs] [4613405] master: OpenSubdiv: Resolve crash when trying to do weight mcol
Sergey Sharybin
noreply at git.blender.org
Wed Jul 22 12:04:20 CEST 2015
Commit: 461340525eea970a9d85d3958cc58bfda07abe7b
Author: Sergey Sharybin
Date: Wed Jul 22 11:58:48 2015 +0200
Branches: master
https://developer.blender.org/rB461340525eea970a9d85d3958cc58bfda07abe7b
OpenSubdiv: Resolve crash when trying to do weight mcol
===================================================================
M source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c
index 05ec83e..3f4b1ee 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.c
+++ b/source/blender/blenkernel/intern/DerivedMesh.c
@@ -2186,8 +2186,12 @@ static void editbmesh_calc_modifiers(
#if 0 /* XXX Will re-enable this when we have global mod stack options. */
const bool do_final_wmcol = (scene->toolsettings->weights_preview == WP_WPREVIEW_FINAL) && do_wmcol;
#endif
+#ifndef WITH_OPENSUBDIV
const bool do_final_wmcol = false;
const bool do_init_wmcol = ((((Mesh *)ob->data)->drawflag & ME_DRAWEIGHT) && !do_final_wmcol);
+#else
+ const bool do_init_wmcol = false;
+#endif
const bool do_init_statvis = ((((Mesh *)ob->data)->drawflag & ME_DRAW_STATVIS) && !do_init_wmcol);
const bool do_mod_wmcol = do_init_wmcol;
VirtualModifierData virtualModifierData;
@@ -2480,7 +2484,7 @@ static void mesh_build_data(
#ifdef WITH_OPENSUBDIV
if (calc_modifiers_skip_orco(ob)) {
- dataMask &= ~CD_MASK_ORCO;
+ dataMask &= ~(CD_MASK_ORCO | CD_MASK_PREVIEW_MCOL);
}
#endif
@@ -2515,7 +2519,7 @@ static void editbmesh_build_data(Scene *scene, Object *obedit, BMEditMesh *em, C
#ifdef WITH_OPENSUBDIV
if (calc_modifiers_skip_orco(obedit)) {
- dataMask &= ~CD_MASK_ORCO;
+ dataMask &= ~(CD_MASK_ORCO | CD_MASK_PREVIEW_MCOL);
}
#endif
More information about the Bf-blender-cvs
mailing list