Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenloader/intern/readfile.c')
-rw-r--r--source/blender/blenloader/intern/readfile.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index abede57b3ce..7d6ea1be77d 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -8873,7 +8873,7 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
if (scene->world) {
World *world = blo_do_versions_newlibadr(fd, scene->id.lib, scene->world);
- if (is_zero_v3(&world->horr)) {
+ if (world && is_zero_v3(&world->horr)) {
if ((world->skytype & WO_SKYBLEND) == 0 || is_zero_v3(&world->zenr)) {
set_premul = true;
}
@@ -9004,13 +9004,15 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
// add storage for compositor translate nodes when not existing
if (!MAIN_VERSION_ATLEAST(main, 265, 10)) {
bNodeTreeType *ntreetype;
+ bNodeTree *ntree;
ntreetype = ntreeGetType(NTREE_COMPOSIT);
if (ntreetype && ntreetype->foreach_nodetree)
ntreetype->foreach_nodetree(main, NULL, do_version_node_fix_translate_wrapping);
- }
-
+ for (ntree = main->nodetree.first; ntree; ntree = ntree->id.next)
+ do_version_node_fix_translate_wrapping(NULL, NULL, ntree);
+ }
// if (main->versionfile < 265 || (main->versionfile == 265 && main->subversionfile < 7)) {
@@ -9132,6 +9134,10 @@ static BHead *read_userdef(BlendFileData *bfd, FileData *fd, BHead *bhead)
bfd->user = user= read_struct(fd, bhead, "user def");
+ /* User struct has separate do-version handling */
+ user->versionfile = bfd->main->versionfile;
+ user->subversionfile = bfd->main->subversionfile;
+
/* read all data into fd->datamap */
bhead = read_data_into_oldnewmap(fd, bhead, "user def");