[Bf-blender-cvs] [8dfdd248b54] blender2.8: Fix T56895: crash loading template with Load UI unchecked.

Brecht Van Lommel noreply at git.blender.org
Mon Sep 24 15:49:30 CEST 2018


Commit: 8dfdd248b54b76c4a45db6f253398bc621142b42
Author: Brecht Van Lommel
Date:   Mon Sep 24 15:41:12 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB8dfdd248b54b76c4a45db6f253398bc621142b42

Fix T56895: crash loading template with Load UI unchecked.

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

M	source/blender/blenkernel/intern/layer.c
M	source/blender/windowmanager/intern/wm_files.c

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

diff --git a/source/blender/blenkernel/intern/layer.c b/source/blender/blenkernel/intern/layer.c
index 707e1738af9..5b6a9f7092e 100644
--- a/source/blender/blenkernel/intern/layer.c
+++ b/source/blender/blenkernel/intern/layer.c
@@ -438,13 +438,16 @@ void BKE_view_layer_rename(Main *bmain, Scene *scene, ViewLayer *view_layer, con
 		}
 	}
 
-	/* fix all the animation data and windows which may link to this */
+	/* Fix all the animation data and windows which may link to this. */
 	BKE_animdata_fix_paths_rename_all(NULL, "view_layers", oldname, view_layer->name);
 
+	/* WM can be missing on startup. */
 	wmWindowManager *wm = bmain->wm.first;
-	for (wmWindow *win = wm->windows.first; win; win = win->next) {
-		if (win->scene == scene && STREQ(win->view_layer_name, oldname)) {
-			STRNCPY(win->view_layer_name, view_layer->name);
+	if (wm) {
+		for (wmWindow *win = wm->windows.first; win; win = win->next) {
+			if (win->scene == scene && STREQ(win->view_layer_name, oldname)) {
+				STRNCPY(win->view_layer_name, view_layer->name);
+			}
 		}
 	}
 
diff --git a/source/blender/windowmanager/intern/wm_files.c b/source/blender/windowmanager/intern/wm_files.c
index 231adfc746a..798b505e257 100644
--- a/source/blender/windowmanager/intern/wm_files.c
+++ b/source/blender/windowmanager/intern/wm_files.c
@@ -1689,6 +1689,11 @@ static int wm_homefile_read_exec(bContext *C, wmOperator *op)
 		RNA_property_string_get(op->ptr, prop_app_template, app_template_buf);
 		app_template = app_template_buf;
 
+		if (!STREQ(app_template, U.app_template)) {
+			/* Always load UI when switching to another template. */
+			G.fileflags &= ~G_FILE_NO_UI;
+		}
+
 		/* Always load preferences when switching templates with own preferences. */
 		use_userdef = wm_app_template_has_userpref(app_template) ||
 		              wm_app_template_has_userpref(U.app_template);



More information about the Bf-blender-cvs mailing list