[Bf-blender-cvs] [bfbd85e9d66] master: Fix error using freed bmain

Campbell Barton noreply at git.blender.org
Wed Jun 6 09:38:14 CEST 2018


Commit: bfbd85e9d66be3793e51ef989f793bdd69214493
Author: Campbell Barton
Date:   Wed Jun 6 09:36:50 2018 +0200
Branches: master
https://developer.blender.org/rBbfbd85e9d66be3793e51ef989f793bdd69214493

Fix error using freed bmain

Regression in 481cdb08ed6f3

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

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

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

diff --git a/source/blender/blenkernel/intern/blender_undo.c b/source/blender/blenkernel/intern/blender_undo.c
index c3306b16041..df2caba0208 100644
--- a/source/blender/blenkernel/intern/blender_undo.c
+++ b/source/blender/blenkernel/intern/blender_undo.c
@@ -82,13 +82,14 @@ bool BKE_memfile_undo_decode(MemFileUndoData *mfu, bContext *C)
 		success = BKE_blendfile_read_from_memfile(C, &mfu->memfile, NULL, 0);
 	}
 
-	/* restore */
-	BLI_strncpy(bmain->name, mainstr, sizeof(bmain->name)); /* restore */
+	/* Restore, bmain has been re-allocated. */
+	bmain = CTX_data_main(C);
+	BLI_strncpy(bmain->name, mainstr, sizeof(bmain->name));
 	G.fileflags = fileflags;
 
 	if (success) {
 		/* important not to update time here, else non keyed tranforms are lost */
-		DAG_on_visible_update(G.main, false);
+		DAG_on_visible_update(bmain, false);
 	}
 
 	return success;



More information about the Bf-blender-cvs mailing list