More bug fixing, reports by Juho (bebraw) Vepsalainen (thanks!)
#10340: a recent fix I made broke handling of pynodes with buggy scripts when loaded from a .blend. (This may have been the reason for #10341, too, caused by saving buggy typeinfo.)
http://projects.blender.org/tracker/?func=detail&atid=125&aid=10340&group_id=9
}
/* Disable pynode when its script fails */
-/*static void node_dynamic_disable(bNode *node)
+static void node_dynamic_disable(bNode *node)
{
node->custom1 = 0;
node->custom1 = BSET(node->custom1, NODE_DYNAMIC_ERROR);
-}*/
+}
/* Disable all pynodes using the given text (script) id */
static void node_dynamic_disable_all_by_id(ID *id)
MEM_freeN(buf);
if (!pyresult) {
+ if (BTST(node->custom1, NODE_DYNAMIC_LOADED)) {
+ node_dynamic_disable(node);
+ } else {
node_dynamic_disable_all_by_id(node->id);
+ }
node_dynamic_pyerror_print(node);
PyGILState_Release(gilstate);
return -1;