Blender Git Commit Log

Git Commits -> Revision b51562e

Revision b51562e by Sybren A. Stüvel (master)
April 8, 2021, 16:59 (GMT)
Fix T87232: Crash when evaluating object with unsupported modifier

Fix `nullptr` redeference when setting 'orig_data' pointers on CoW copies,
by stopping the loop also when `element_cow == nullptr`. This avoids a
crash of Blender when the original list of pointers is longer than the
CoW list of pointers.

I've also added a `BLI_assert()` that checks for equal lengths of the
two `ListBase`s, so that problems like these aren't hidden away completely.

The root cause of the crash was actually a modifier that was assigned to
an object of the wrong type (an Armature object doesn't support modifiers).
This caused the list of modifiers on the CoW copy to be shorter than the
list of modifiers on the original Object. It's still a mystery how that
object got that modifier in the first place.

Commit Details:

Full Hash: b51562ed76d5428ed4d511cd248d1b059e341661
Parent Commit: 8777a44
Lines Changed: +7, -1

1 Modified Path:

/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc (+7, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021