[Bf-blender-cvs] [8fa42f0bd4e] blender-v2.90-release: Fix T79604: Switching to edit mode on boolean object runs out of memory.
Bastien Montagne
noreply at git.blender.org
Fri Aug 7 17:08:20 CEST 2020
Commit: 8fa42f0bd4e84b49fbba64df771bf63da5b6477d
Author: Bastien Montagne
Date: Fri Aug 7 17:07:30 2020 +0200
Branches: blender-v2.90-release
https://developer.blender.org/rB8fa42f0bd4e84b49fbba64df771bf63da5b6477d
Fix T79604: Switching to edit mode on boolean object runs out of memory.
Note that this is a dummy safe fix for now, far from optimal.
===================================================================
M source/blender/modifiers/intern/MOD_boolean.c
===================================================================
diff --git a/source/blender/modifiers/intern/MOD_boolean.c b/source/blender/modifiers/intern/MOD_boolean.c
index 1d39aa786a5..35aa7805db8 100644
--- a/source/blender/modifiers/intern/MOD_boolean.c
+++ b/source/blender/modifiers/intern/MOD_boolean.c
@@ -44,6 +44,7 @@
#include "BKE_lib_query.h"
#include "BKE_material.h"
#include "BKE_mesh.h"
+#include "BKE_mesh_wrapper.h"
#include "BKE_modifier.h"
#include "BKE_screen.h"
@@ -177,6 +178,9 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh *
Object *other = bmd->object;
mesh_other = BKE_modifier_get_evaluated_mesh_from_evaluated_object(other, false);
+ /* XXX This is utterly non-optimal, we may go from a bmesh to a mesh back to a bmesh!
+ * But for 2.90 better not try to be smart here. */
+ BKE_mesh_wrapper_ensure_mdata(mesh_other);
if (mesh_other) {
Object *object = ctx->object;
More information about the Bf-blender-cvs
mailing list