[Bf-blender-cvs] [7e210e68ba9] master: LibOverride: Do not tag overrides for complete recalc.

Bastien Montagne noreply at git.blender.org
Fri Nov 13 14:42:39 CET 2020


Commit: 7e210e68ba9f79642cde6ebe07691a7f3169bb9e
Author: Bastien Montagne
Date:   Fri Nov 13 14:16:01 2020 +0100
Branches: master
https://developer.blender.org/rB7e210e68ba9f79642cde6ebe07691a7f3169bb9e

LibOverride: Do not tag overrides for complete recalc.

This was done as some sort of safety, but should not actually be needed,
and including tags like `ID_RECALC_POINT_CACHE` e.g. makes usage of
point caches impossible with liboverrides (since it would systematically
invalidate all cache on file load).

In theory we should not have to tag anything here in fact, RNA accessors
are supposed to take care of it, but for now we keep the
`ID_RECALC_COPY_ON_WRITE` one.

Part of first step of T82503: support disk cache in liboverrides.

===================================================================

M	source/blender/blenkernel/intern/lib_override.c

===================================================================

diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c
index 8825d71fc3c..e6f0e5e1199 100644
--- a/source/blender/blenkernel/intern/lib_override.c
+++ b/source/blender/blenkernel/intern/lib_override.c
@@ -1801,7 +1801,7 @@ void BKE_lib_override_library_update(Main *bmain, ID *local)
   /* Full rebuild of Depsgraph! */
   /* Note: this is really brute force, in theory updates from RNA should have handled this already,
    * but for now let's play it safe. */
-  DEG_id_tag_update_ex(bmain, local, ID_RECALC_ALL);
+  DEG_id_tag_update_ex(bmain, local, ID_RECALC_COPY_ON_WRITE);
   DEG_relations_tag_update(bmain);
 }



More information about the Bf-blender-cvs mailing list