From d1848b80f1caaebf31d2f6e3207d6e6f00347362 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 1 Aug 2019 17:23:41 +1000 Subject: Fix error setting the user preferences User preferences from the startup.blend was still being used, fixing this exposed missing theme initialization, now fixed. --- source/blender/blenkernel/intern/blendfile.c | 11 +++++++++-- source/blender/windowmanager/intern/wm_files.c | 4 ++-- 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'source') diff --git a/source/blender/blenkernel/intern/blendfile.c b/source/blender/blenkernel/intern/blendfile.c index e4019cce711..d273bfb96de 100644 --- a/source/blender/blenkernel/intern/blendfile.c +++ b/source/blender/blenkernel/intern/blendfile.c @@ -560,8 +560,7 @@ UserDef *BKE_blendfile_userdef_read_from_memory(const void *filebuf, UserDef *BKE_blendfile_userdef_from_defaults(void) { UserDef *userdef = MEM_mallocN(sizeof(*userdef), __func__); - - memcpy(userdef, &U_default, sizeof(UserDef)); + memcpy(userdef, &U_default, sizeof(*userdef)); /* Add-ons. */ { @@ -583,6 +582,14 @@ UserDef *BKE_blendfile_userdef_from_defaults(void) } } + /* Theme. */ + { + bTheme *btheme = MEM_mallocN(sizeof(*btheme), __func__); + memcpy(btheme, &U_theme_default, sizeof(*btheme)); + + BLI_addtail(&userdef->themes, btheme); + } + #ifdef WITH_PYTHON_SECURITY /* use alternative setting for security nuts * otherwise we'd need to patch the binary blob - startup.blend.c */ diff --git a/source/blender/windowmanager/intern/wm_files.c b/source/blender/windowmanager/intern/wm_files.c index e55d78c7842..10773cf58e1 100644 --- a/source/blender/windowmanager/intern/wm_files.c +++ b/source/blender/windowmanager/intern/wm_files.c @@ -951,8 +951,8 @@ void wm_homefile_read(bContext *C, if (use_userdef) { if ((skip_flags & BLO_READ_SKIP_USERDEF) == 0) { UserDef *userdef_default = BKE_blendfile_userdef_from_defaults(); - BKE_blender_userdef_app_template_data_set_and_free(userdef_default); - skip_flags &= ~BLO_READ_SKIP_USERDEF; + BKE_blender_userdef_data_set_and_free(userdef_default); + skip_flags |= BLO_READ_SKIP_USERDEF; } } -- cgit v1.2.3