Blender Git Commit Log
Git Commits -> Revision 0845dc0
October 28, 2020, 08:34 (GMT) |
Fix T81854: crash when undoing switch between sculpt and edit mode. The logic of `BKE_sculpt_update_object_for_edit` was not correct. such low-level functions should typically never preform depsgraph evaluation themselves, they should be able to rely on getting a fully evaluated depsgraph and just get needed data from there. Supporting that required fixing other broken code higher in the callstack, namely: * `ED_object_sculptmode_enter_ex` was freeing evaluated data, for no valid reason it would seem. * `sculpt_undosys_step_decode` was ensuring an evaluated depsgraph **before** calling `ED_object_mode_generic_exit`, which would invalidate a lot of evaluated data. Note that it is fairly difficult to track down all code paths leading to `BKE_sculpt_update_object_for_edit`, so there may be still cases where this gets called with improperly evaluated depsgraph. Reviewed By: sergey Maniphest Tasks: T81854 Differential Revision: https://developer.blender.org/D9270 |
Commit Details:
Full Hash: 0845dc0eece716947148ecc11a2276b0f5634f65
Parent Commit: 8926b09
Committed By: Jeroen Bakker
Lines Changed: +13, -12