All these data arrays are created for a specific topology, so they should be
freed and updated when the PBVH rebuilds. Previously, this was only
happening when freeing the SculptSession, but it also needs to happen in
BKE_sculpt_update_object_before_eval to avoid reusing out of date data
Details
- Reviewers
Sergey Sharybin (sergey) - Maniphest Tasks
- T79074: Smooth brush bug
- Commits
- rB000652695211: Fix T79074: Mesh Topology info not being updated after changes
Diff Detail
- Repository
- rB Blender
Event Timeline
While the code seems fine, the description is rather confusing.
Basically, using "linked" and "reusing invalidad data" makes it feel that you're talking about access freed memory. Which confusing because why the bug is about invalid topology info and not a crash?
Or, did you mean by "linked" something more like "Topology information is created and cached for a specific object topology. It is to be re-calculated when object topology changes", and by "invalid data" you meant "out of date data" ?
Or, did you mean by "linked" something more like "Topology information is created and cached for a specific object topology. It is to be re-calculated when object topology changes", and by "invalid data" you meant "out of date data" ?
Yes, that is it. I updated the commit message