Blender Git Loki

Git Commits -> Revision 158679c

Revision 158679c by Sergey Sharybin (master)
July 1, 2016, 12:25 (GMT)
Fix T48666: Segfault on boolean operation when exiting edit mode of instanced operand

This is quite tricky situation which combined:

- Boolean modifier which accesses other object's derived mesh
(in fact, it's nothing to do with boolean modifier, any other
modifier which uses other's DM will have same bug).

- Dependency cycles in the scene which is rather russian-roulette
from the cycle solver point of view.

- Multiple instanced objects used as boolean operand.

With all this things combined boolean modifier was accessing operand's derived
mesh which was referencing data from Mesh datablock. The issue is that those
references are becoming invalid after EDBM_mesh_load().

This function already had code to make sure object itself does not end up with
dangling pointers from derived mesh. Make it now so no possible instanced objects
are left with dangling pointers.

And who said it's a good idea to reference something from derived mesh..

Commit Details:

Full Hash: 158679c9cc0f024fd54874f48e82cc00072caab4
Parent Commit: 50d715f
Lines Changed: +18, -3

1 Modified Path:

/source/blender/editors/mesh/editmesh_utils.c (+18, -3) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021