diff options
Diffstat (limited to 'source/blender/blenloader/intern')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 5 | ||||
-rw-r--r-- | source/blender/blenloader/intern/writefile.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 7267b8adb00..dc575c1f805 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -3516,6 +3516,11 @@ static void direct_link_nodetree(FileData *fd, bNodeTree *ntree) } if (node->storage) { + if (STREQ(node->idname, "FloatAddNode")) { + FloatAddNodeStorage *storage = (FloatAddNodeStorage *)node->storage; + link_list(fd, &storage->inputs_info); + } + /* could be handlerized at some point */ switch (node->type) { case SH_NODE_CURVE_VEC: diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c index edc7eba933f..e891227e68f 100644 --- a/source/blender/blenloader/intern/writefile.c +++ b/source/blender/blenloader/intern/writefile.c @@ -1073,6 +1073,13 @@ static void write_nodetree_nolib(WriteData *wd, bNodeTree *ntree) } writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage); } + else if (STREQ(node->idname, "FloatAddNode")) { + FloatAddNodeStorage *storage = (FloatAddNodeStorage *)node->storage; + LISTBASE_FOREACH (VariadicNodeSocketIdentifier *, value, &storage->inputs_info) { + writestruct_id(wd, DATA, "VariadicNodeSocketIdentifier", 1, value); + } + writestruct_id(wd, DATA, "FloatAddNodeStorage", 1, node->storage); + } else { writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage); } |