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:
authorLukas Toenne <lukas.toenne@googlemail.com>2013-04-03 15:36:48 +0400
committerLukas Toenne <lukas.toenne@googlemail.com>2013-04-03 15:36:48 +0400
commit07677e836ff0d11d98da2d11c41b058966d06c6a (patch)
tree87e6a750f84686584a535a2c77c40676f6f296b1 /source/blender/blenloader
parentd407aeecc7f2d45422ff14aea88276edf244aa7a (diff)
Fix for old compatibility issue: 2.59.2 do_versions was not handling all local node trees (world and lamp missing).
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r--source/blender/blenloader/intern/versioning_250.c58
1 files changed, 17 insertions, 41 deletions
diff --git a/source/blender/blenloader/intern/versioning_250.c b/source/blender/blenloader/intern/versioning_250.c
index 2445775ad44..034857d7c54 100644
--- a/source/blender/blenloader/intern/versioning_250.c
+++ b/source/blender/blenloader/intern/versioning_250.c
@@ -742,22 +742,6 @@ static void do_versions_socket_default_value_259(bNodeSocket *sock)
}
}
-static void do_versions_nodetree_default_value_259(bNodeTree *ntree)
-{
- bNode *node;
- bNodeSocket *sock;
- for (node=ntree->nodes.first; node; node=node->next) {
- for (sock = node->inputs.first; sock; sock = sock->next)
- do_versions_socket_default_value_259(sock);
- for (sock = node->outputs.first; sock; sock = sock->next)
- do_versions_socket_default_value_259(sock);
- }
- for (sock = ntree->inputs.first; sock; sock = sock->next)
- do_versions_socket_default_value_259(sock);
- for (sock = ntree->outputs.first; sock; sock = sock->next)
- do_versions_socket_default_value_259(sock);
-}
-
void blo_do_versions_250(FileData *fd, Library *lib, Main *main)
{
/* WATCH IT!!!: pointers from libdata have not been converted */
@@ -2736,33 +2720,25 @@ void blo_do_versions_250(FileData *fd, Library *lib, Main *main)
if (main->versionfile < 259 || (main->versionfile == 259 && main->subversionfile < 2)) {
{
/* Convert default socket values from bNodeStack */
- Scene *sce;
- Material *mat;
- Tex *tex;
- bNodeTree *ntree;
-
- for (ntree = main->nodetree.first; ntree; ntree = ntree->id.next) {
- do_versions_nodetree_default_value_259(ntree);
+ FOREACH_NODETREE(main, ntree, id) {
+ bNode *node;
+ bNodeSocket *sock;
+
+ for (node=ntree->nodes.first; node; node=node->next) {
+ for (sock = node->inputs.first; sock; sock = sock->next)
+ do_versions_socket_default_value_259(sock);
+ for (sock = node->outputs.first; sock; sock = sock->next)
+ do_versions_socket_default_value_259(sock);
+ }
+
+ for (sock = ntree->inputs.first; sock; sock = sock->next)
+ do_versions_socket_default_value_259(sock);
+ for (sock = ntree->outputs.first; sock; sock = sock->next)
+ do_versions_socket_default_value_259(sock);
+
ntree->update |= NTREE_UPDATE;
}
-
- for (sce = main->scene.first; sce; sce = sce->id.next)
- if (sce->nodetree) {
- do_versions_nodetree_default_value_259(sce->nodetree);
- sce->nodetree->update |= NTREE_UPDATE;
- }
-
- for (mat = main->mat.first; mat; mat = mat->id.next)
- if (mat->nodetree) {
- do_versions_nodetree_default_value_259(mat->nodetree);
- mat->nodetree->update |= NTREE_UPDATE;
- }
-
- for (tex = main->tex.first; tex; tex = tex->id.next)
- if (tex->nodetree) {
- do_versions_nodetree_default_value_259(tex->nodetree);
- tex->nodetree->update |= NTREE_UPDATE;
- }
+ FOREACH_NODETREE_END
}
{