[Bf-blender-cvs] [82bc1967365] filebrowser_redesign: Fix possible crash when opening files saved with new file browser open

Julian Eisel noreply at git.blender.org
Tue Sep 3 11:31:09 CEST 2019


Commit: 82bc196736576be9b161de97d4cfe7e1773c09ee
Author: Julian Eisel
Date:   Mon Sep 2 17:01:41 2019 +0200
Branches: filebrowser_redesign
https://developer.blender.org/rB82bc196736576be9b161de97d4cfe7e1773c09ee

Fix possible crash when opening files saved with new file browser open

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

M	source/blender/blenloader/intern/versioning_280.c
M	source/blender/editors/space_file/file_ops.c

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

diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index e0396cf1ec1..6bf39ee6e5d 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -3720,7 +3720,8 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *bmain)
             ListBase *regionbase = (sl == sa->spacedata.first) ? &sa->regionbase : &sl->regionbase;
             ARegion *ar_ui = do_versions_find_region(regionbase, RGN_TYPE_UI);
             ARegion *ar_header = do_versions_find_region(regionbase, RGN_TYPE_HEADER);
-            ARegion *ar_toolprops = do_versions_find_region(regionbase, RGN_TYPE_TOOL_PROPS);
+            ARegion *ar_toolprops = do_versions_find_region_or_null(regionbase,
+                                                                    RGN_TYPE_TOOL_PROPS);
 
             /* Reinsert UI region so that it spawns entire area width */
             BLI_remlink(regionbase, ar_ui);
@@ -3728,7 +3729,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *bmain)
 
             ar_ui->flag |= RGN_FLAG_DYNAMIC_SIZE;
 
-            if (ar_toolprops->alignment == (RGN_ALIGN_BOTTOM | RGN_SPLIT_PREV)) {
+            if (ar_toolprops && (ar_toolprops->alignment == (RGN_ALIGN_BOTTOM | RGN_SPLIT_PREV))) {
               SpaceType *stype = BKE_spacetype_from_id(sl->spacetype);
 
               /* Remove empty region at old location. */
diff --git a/source/blender/editors/space_file/file_ops.c b/source/blender/editors/space_file/file_ops.c
index f51854eb61a..bd018581d32 100644
--- a/source/blender/editors/space_file/file_ops.c
+++ b/source/blender/editors/space_file/file_ops.c
@@ -2369,7 +2369,7 @@ static bool file_filenum_poll(bContext *C)
     return false;
   }
 
-  return (sfile->params->action_type == FILE_SAVE);
+  return sfile->params && (sfile->params->action_type == FILE_SAVE);
 }
 
 /**



More information about the Bf-blender-cvs mailing list