Blender Git Loki
Git Commits -> Revision fec9615
Revision fec9615 by Sergey Sharybin (master) May 23, 2019, 07:47 (GMT) |
Masks: Properly port to Copy-on-Write concept Masks were not really covered by Copy-on-Write due to mistake in the dependency graph. After correcting that mistake a lot of tools became broken, so majority of the patch is related on making it so access to evaluated/tessellated masks is done. When accessing evaluated mask state make sure access to an evaluated dependency graph is done. This solves possible access to NULL data on redo. Fixes T64899: Re-doing new point addition causes crash Reviewers: brecht Reviewed By: brecht Maniphest Tasks: T64899 Differential Revision: https://developer.blender.org/D4918 |
Commit Details:
Full Hash: fec9615ea06c94b5224c14479c31c55c567fb7ee
Parent Commit: 1d48fa2
Lines Changed: +142, -103
13 Modified Paths:
/source/blender/blenkernel/BKE_mask.h (+0, -2) (Diff)
/source/blender/blenkernel/intern/mask.c (+0, -7) (Diff)
/source/blender/blenkernel/intern/mask_evaluate.c (+20, -0) (Diff)
/source/blender/depsgraph/DEG_depsgraph_query.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+1, -1) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.cc (+2, -0) (Diff)
/source/blender/editors/include/ED_mask.h (+3, -1) (Diff)
/source/blender/editors/mask/mask_add.c (+32, -34) (Diff)
/source/blender/editors/mask/mask_draw.c (+7, -3) (Diff)
/source/blender/editors/mask/mask_ops.c (+58, -53) (Diff)
/source/blender/editors/mask/mask_select.c (+12, -0) (Diff)
/source/blender/editors/space_clip/space_clip.c (+2, -1) (Diff)
/source/blender/editors/space_image/space_image.c (+2, -1) (Diff)
/source/blender/blenkernel/intern/mask.c (+0, -7) (Diff)
/source/blender/blenkernel/intern/mask_evaluate.c (+20, -0) (Diff)
/source/blender/depsgraph/DEG_depsgraph_query.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+1, -1) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.cc (+2, -0) (Diff)
/source/blender/editors/include/ED_mask.h (+3, -1) (Diff)
/source/blender/editors/mask/mask_add.c (+32, -34) (Diff)
/source/blender/editors/mask/mask_draw.c (+7, -3) (Diff)
/source/blender/editors/mask/mask_ops.c (+58, -53) (Diff)
/source/blender/editors/mask/mask_select.c (+12, -0) (Diff)
/source/blender/editors/space_clip/space_clip.c (+2, -1) (Diff)
/source/blender/editors/space_image/space_image.c (+2, -1) (Diff)