Fix for crash when userprefs fails to read.
This commit is contained in:
parent
65d54f34b1
commit
d964bad67b
|
@ -500,20 +500,22 @@ int BKE_read_file_from_memfile(bContext *C, MemFile *memfile, ReportList *report
|
|||
int BKE_read_file_userdef(const char *filepath, ReportList *reports)
|
||||
{
|
||||
BlendFileData *bfd;
|
||||
int retval = 0;
|
||||
|
||||
int retval = BKE_READ_FILE_FAIL;
|
||||
|
||||
bfd = BLO_read_from_file(filepath, reports);
|
||||
if (bfd->user) {
|
||||
retval = BKE_READ_FILE_OK_USERPREFS;
|
||||
|
||||
/* only here free userdef themes... */
|
||||
BKE_userdef_free();
|
||||
|
||||
U = *bfd->user;
|
||||
MEM_freeN(bfd->user);
|
||||
if (bfd) {
|
||||
if (bfd->user) {
|
||||
retval = BKE_READ_FILE_OK_USERPREFS;
|
||||
|
||||
/* only here free userdef themes... */
|
||||
BKE_userdef_free();
|
||||
|
||||
U = *bfd->user;
|
||||
MEM_freeN(bfd->user);
|
||||
}
|
||||
BKE_main_free(bfd->main);
|
||||
MEM_freeN(bfd);
|
||||
}
|
||||
BKE_main_free(bfd->main);
|
||||
MEM_freeN(bfd);
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
|
|
@ -603,7 +603,7 @@ int wm_homefile_read(bContext *C, ReportList *reports, bool from_memory, const c
|
|||
/* check new prefs only after startup.blend was finished */
|
||||
if (!from_memory && BLI_exists(prefstr)) {
|
||||
int done = BKE_read_file_userdef(prefstr, NULL);
|
||||
if (done) {
|
||||
if (done != BKE_READ_FILE_FAIL) {
|
||||
read_userdef_from_memory = false;
|
||||
printf("Read new prefs: %s\n", prefstr);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue