System Information
Operating system: Linux-5.10.22-200.fc33.x86_64-x86_64-with-glibc2.32 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 460.56
Blender Version
Broken: version: 2.93.0 Alpha, branch: latest master
Worked: The code looks the same as when the feature was added
Short description of error
Using the fast solver for the boolean modifier in collection mode will leak memory.
Exact steps for others to reproduce the error
While working on rBa0e1080428abb991c I discovered this issue with the fast boolean mode.
For every operand object except the last, the boolean modifier in fast mode leaks a newly created Mesh object on every evaluation.
FOREACH_COLLECTION_OBJECT_RECURSIVE_BEGIN (collection, operand_ob) {
if (operand_ob->type == OB_MESH && operand_ob != ctx->object) {
...
result = BKE_mesh_from_bmesh_for_eval_nomain(bm, nullptr, mesh);
BM_mesh_free(bm);
result->runtime.cd_dirty_vert |= CD_MASK_NORMAL;
}
}Related commits:
rBab7608af1bd4: Apply patch D8816, from Zachary(AFWS) for collection boolean operand.
rBc271600101a2: Fix T82089 Boolean on empty mesh with collection fails.