0251db1447d4cea3b0f7bfff9fb8cd751c17df87
The viewport compositor crashes when the scene is changed in some situations. That's because the viewport compositor tries to use node tree data that was freed in the last depsgraph update, while it should have invalidate those references based on the same depsgraph update. The source of this issue is in the depsgraph itself. In particular, when the depsgraph evaluation happens in two passes, the ID recalculate flags are backed up for every pass then restored at the end of all passes, however, this doesn't happen for the ID Type Update table. So whenever evaluations happen in two passes, changes will not be propagated to engines that require those information, like the viewport compositor engine in that particular case. To fix this, we backup and restore the ID Type Update table in a similar manner to the ID recalculate flags. Fixes #107235, #124335, #116142. Pull Request: https://projects.blender.org/blender/blender/pulls/124409
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
