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:
authorBastien Montagne <bastien@blender.org>2022-06-07 16:29:01 +0300
committerBastien Montagne <bastien@blender.org>2022-06-07 16:30:05 +0300
commitccf0d22e92ccd3148326477a3e807261c3e9537c (patch)
treec6b6e0fa241a85c375c9c4eab38f6db999dd4d22 /source/blender/modifiers/intern/MOD_surfacedeform.c
parentb69aad60bda23a53482b2c2ae98715c23a715bc8 (diff)
Fix T98626: Mesh Deform modifier stops working on a linked collection upon undo.
Regression from rBb66368f3fd9c, we still need to store all data on undo writes, since overrides are not re-applied after undo/redo.
Diffstat (limited to 'source/blender/modifiers/intern/MOD_surfacedeform.c')
-rw-r--r--source/blender/modifiers/intern/MOD_surfacedeform.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_surfacedeform.c b/source/blender/modifiers/intern/MOD_surfacedeform.c
index 9b0012e3890..20cc9b2392f 100644
--- a/source/blender/modifiers/intern/MOD_surfacedeform.c
+++ b/source/blender/modifiers/intern/MOD_surfacedeform.c
@@ -1672,8 +1672,9 @@ static void panelRegister(ARegionType *region_type)
static void blendWrite(BlendWriter *writer, const ID *id_owner, const ModifierData *md)
{
SurfaceDeformModifierData smd = *(const SurfaceDeformModifierData *)md;
+ const bool is_undo = BLO_write_is_undo(writer);
- if (ID_IS_OVERRIDE_LIBRARY(id_owner)) {
+ if (ID_IS_OVERRIDE_LIBRARY(id_owner) && !is_undo) {
BLI_assert(!ID_IS_LINKED(id_owner));
const bool is_local = (md->flag & eModifierFlag_OverrideLibrary_Local) != 0;
if (!is_local) {