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:
authorBrecht Van Lommel <brecht@blender.org>2020-03-28 23:48:07 +0300
committerBrecht Van Lommel <brecht@blender.org>2020-03-30 21:09:20 +0300
commitf4982b555c340348a50ee80df0a4bf11074d3b1d (patch)
tree0a316e8dd27a69aec596bd6fbc5524f8e42cbf34 /source/blender/blenkernel/intern/blender_undo.c
parent2e60226f23b684bff6cd3c2e78e683b911656002 (diff)
Fix undo misdetecting identical future chunk in some cases
Clear is_identical_future before adding a next undo step, to avoid wrong values for cases where we undo and then add a step with different changes than what was previously the next step. Ref D7274
Diffstat (limited to 'source/blender/blenkernel/intern/blender_undo.c')
-rw-r--r--source/blender/blenkernel/intern/blender_undo.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/blender_undo.c b/source/blender/blenkernel/intern/blender_undo.c
index 99eb4dc9122..ab382d0e8ff 100644
--- a/source/blender/blenkernel/intern/blender_undo.c
+++ b/source/blender/blenkernel/intern/blender_undo.c
@@ -124,6 +124,9 @@ MemFileUndoData *BKE_memfile_undo_encode(Main *bmain, MemFileUndoData *mfu_prev)
}
else {
MemFile *prevfile = (mfu_prev) ? &(mfu_prev->memfile) : NULL;
+ if (prevfile) {
+ BLO_memfile_clear_future(prevfile);
+ }
/* success = */ /* UNUSED */ BLO_write_file_mem(bmain, prevfile, &mfu->memfile, G.fileflags);
mfu->undo_size = mfu->memfile.size;
}