From b2d3956e7b497bd6d5467113bfd76614f5188ae0 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Fri, 17 Mar 2017 05:10:36 +1100 Subject: Add support for loading preference struct Previously it would always load into 'U' global. Needed for loading & merging template preferences. --- source/blender/blenkernel/intern/blendfile.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) (limited to 'source/blender/blenkernel/intern/blendfile.c') diff --git a/source/blender/blenkernel/intern/blendfile.c b/source/blender/blenkernel/intern/blendfile.c index 8b472249939..c549c138ef2 100644 --- a/source/blender/blenkernel/intern/blendfile.c +++ b/source/blender/blenkernel/intern/blendfile.c @@ -227,7 +227,7 @@ static void setup_app_data( if (bfd->user) { /* only here free userdef themes... */ - BKE_blender_userdef_free(&U); + BKE_blender_userdef_free_data(&U); U = *bfd->user; @@ -425,31 +425,25 @@ bool BKE_blendfile_read_from_memfile( } /* only read the userdef from a .blend */ -int BKE_blendfile_read_userdef(const char *filepath, ReportList *reports) +UserDef *BKE_blendfile_userdef_read(const char *filepath, ReportList *reports) { BlendFileData *bfd; - int retval = BKE_BLENDFILE_READ_FAIL; + UserDef *userdef = NULL; bfd = BLO_read_from_file(filepath, reports, BLO_READ_SKIP_NONE); if (bfd) { if (bfd->user) { - retval = BKE_BLENDFILE_READ_OK_USERPREFS; - - /* only here free userdef themes... */ - BKE_blender_userdef_free(&U); - - U = *bfd->user; - MEM_freeN(bfd->user); + userdef = bfd->user; } BKE_main_free(bfd->main); MEM_freeN(bfd); } - return retval; + return userdef; } /* only write the userdef in a .blend */ -int BKE_blendfile_write_userdef(const char *filepath, ReportList *reports) +int BKE_blendfile_userdef_write(const char *filepath, ReportList *reports) { Main *mainb = MEM_callocN(sizeof(Main), "empty main"); int retval = 0; -- cgit v1.2.3