[Bf-blender-cvs] [fadbb2fde8c] blender2.8: Fix crash using pre 2.5 file as startup.blend

Julian Eisel noreply at git.blender.org
Thu Nov 9 15:32:51 CET 2017


Commit: fadbb2fde8c2a6814f8d8edf577ea1d71879b4db
Author: Julian Eisel
Date:   Thu Nov 9 05:37:09 2017 +0100
Branches: blender2.8
https://developer.blender.org/rBfadbb2fde8c2a6814f8d8edf577ea1d71879b4db

Fix crash using pre 2.5 file as startup.blend

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

M	source/blender/windowmanager/intern/wm.c

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

diff --git a/source/blender/windowmanager/intern/wm.c b/source/blender/windowmanager/intern/wm.c
index 5b2734eaf9e..dbc189c6c40 100644
--- a/source/blender/windowmanager/intern/wm.c
+++ b/source/blender/windowmanager/intern/wm.c
@@ -52,6 +52,7 @@
 #include "BKE_screen.h"
 #include "BKE_report.h"
 #include "BKE_global.h"
+#include "BKE_workspace.h"
 
 #include "WM_api.h"
 #include "WM_types.h"
@@ -433,12 +434,14 @@ void wm_add_default(Main *bmain, bContext *C)
 	wmWindowManager *wm = BKE_libblock_alloc(bmain, ID_WM, "WinMan", 0);
 	wmWindow *win;
 	bScreen *screen = CTX_wm_screen(C); /* XXX from file read hrmf */
-	struct WorkSpace *workspace = G.main->workspaces.last;
+	WorkSpace *workspace;
+	WorkSpaceLayout *layout = BKE_workspace_layout_find_global(bmain, screen, &workspace);
 
 	CTX_wm_manager_set(C, wm);
 	win = wm_window_new(C);
+	win->scene = CTX_data_scene(C);
 	WM_window_set_active_workspace(win, workspace);
-	WM_window_set_active_screen(win, workspace, screen);
+	WM_window_set_active_layout(win, workspace, layout);
 	screen->winid = win->winid;
 	BLI_strncpy(win->screenname, screen->id.name + 2, sizeof(win->screenname));



More information about the Bf-blender-cvs mailing list