For some reason this file contains a Multirse Modifier whithout the MDISP datalayer. This was causing the BKE_sculpt_multires_active function to detect the modifier incorrectly, so it was starting the stroke with deform_modifiers_active set to true, when modifiers are not supported when sculpting on top of Multires. This was causing a crash when copying the undeformed coordintes when pushing a node to undo, as they weren't initialized.
Details
- Reviewers
Jeroen Bakker (jbakker) - Maniphest Tasks
- T70173: MultiRes+Solidify while trying to use Sculpt Mode cause Blender to crash
Diff Detail
- Repository
- rB Blender
- Branch
- T70173 (branched from master)
- Build Status
Buildable 6372 Build 6372: arc lint + arc unit
Event Timeline
this change seems to much as a quick work-around, do we know the root cause. I don't like to add patches when the data of a single file got corrupted. Question is why did it get corrupted?
This affects other bugs in the tracker were the crash can be recreated from scratch (by applying modifiers on top of Multires), so maybe this is the intended way of doing it. This function is also initializing the mask datalayers for Multires and meshes if they don't exist, so I don't think there is another place to ensure that all the required datalayers exist before starting sculpt mode
This bug is not limited to a single example file; it can be created on the fly by following a a few steps from a new file, as outlined in the steps below:
Attempting to perform this list of task will cause Blender to crash instantly.