[Bf-blender-cvs] [45271f785a0] functions: clear cached node states on file load

Jacques Lucke noreply at git.blender.org
Tue Apr 30 12:08:25 CEST 2019


Commit: 45271f785a0a8585a304f9a5fb702cb3363ced37
Author: Jacques Lucke
Date:   Tue Apr 30 12:07:20 2019 +0200
Branches: functions
https://developer.blender.org/rB45271f785a0a8585a304f9a5fb702cb3363ced37

clear cached node states on file load

===================================================================

M	release/scripts/startup/function_nodes/base.py

===================================================================

diff --git a/release/scripts/startup/function_nodes/base.py b/release/scripts/startup/function_nodes/base.py
index cd25afac987..0965e2ed9c6 100644
--- a/release/scripts/startup/function_nodes/base.py
+++ b/release/scripts/startup/function_nodes/base.py
@@ -37,9 +37,6 @@ class SocketValueStates:
                 socket.restore_state(self.input_value_storage[storage_id])
 
 
-_decl_map_per_node = {}
-_socket_value_states_per_node = {}
-
 class BaseNode:
     search_terms = tuple()
     search_terms_only = False
@@ -250,3 +247,15 @@ class LinkageState:
         for socket in self.node.outputs:
             for to_socket in self.links_per_output[socket.identifier]:
                 tree.links.new(to_socket, socket)
+
+
+_decl_map_per_node = {}
+_socket_value_states_per_node = {}
+
+ at bpy.app.handlers.persistent
+def clear_cached_node_states(_):
+    _decl_map_per_node.clear()
+    _socket_value_states_per_node.clear()
+
+def register():
+    bpy.app.handlers.load_pre.append(clear_cached_node_states)



More information about the Bf-blender-cvs mailing list