Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDalai Felinto <dfelinto@gmail.com>2018-05-24 13:04:04 +0300
committerDalai Felinto <dfelinto@gmail.com>2018-05-24 13:17:55 +0300
commitc1361d2651222fb52839df038e92c18e1fdefc4e (patch)
tree886cd5800b50f99da8f363660e6fb294d884482e /source/blender/makesdna/DNA_ID.h
parentcb3c9cba49290bf12116033a7ea151cad352cf76 (diff)
Depsgraph: tag depsgraph for copy-on-write flush when RNA changes
Fixes bug with changes to properties not being flushed to the COW data. It fixes T55144. This is the part of rBb4b745b72064 that is required although slow. Which was partially addressed but the rest of the commit, which in turn broke things. So for now let's get RNA to flush slow cow, and deal with the consequences.
Diffstat (limited to 'source/blender/makesdna/DNA_ID.h')
-rw-r--r--source/blender/makesdna/DNA_ID.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h
index acf054a94d5..4d59a7c9669 100644
--- a/source/blender/makesdna/DNA_ID.h
+++ b/source/blender/makesdna/DNA_ID.h
@@ -397,6 +397,10 @@ typedef enum ID_Type {
ID_IS_STATIC_OVERRIDE((_id)) && \
(((ID *)(_id))->override_static->flag & STATICOVERRIDE_AUTO))
+/* No copy-on-write for these types. */
+#define ID_TYPE_IS_COW(_id_type) \
+ (!ELEM(_id_type, ID_WM, ID_SCR, ID_SCRN, ID_IM, ID_MC, ID_LI))
+
#ifdef GS
# undef GS
#endif