diff options
author | Antony Riakiotakis <kalast@gmail.com> | 2014-11-06 18:38:31 +0300 |
---|---|---|
committer | Antony Riakiotakis <kalast@gmail.com> | 2014-11-06 18:38:44 +0300 |
commit | 0c28aaae7e65538f8e6c30a35861dc6c49a84637 (patch) | |
tree | 2bbf27b712298f79ea591f87f5c4924a45982c9b /source/blender | |
parent | a081a4817cf43ec20fc7ba26b2b92fad2d976c8e (diff) |
Fix T42525 crash when deleting lamp attached to Lamp Data material node
in material shading mode.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/object.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c index 72f7d54b555..b910e11beed 100644 --- a/source/blender/blenkernel/intern/object.c +++ b/source/blender/blenkernel/intern/object.c @@ -435,6 +435,8 @@ void BKE_object_unlink(Object *ob) Scene *sce; SceneRenderLayer *srl; FreestyleLineSet *lineset; + bNodeTree *ntree; + bNode *node; Curve *cu; Tex *tex; Group *group; @@ -811,6 +813,15 @@ void BKE_object_unlink(Object *ob) } camera = camera->id.next; } + + /* nodes */ + for (ntree = bmain->nodetree.first; ntree; ntree = ntree->id.next) { + for (node = ntree->nodes.first; node; node = node->next) { + if (node->id == &ob->id) { + node->id = NULL; + } + } + } } /* actual check for internal data, not context or flags */ |