Compare commits
4 Commits
master
...
132-fix-un
Author | SHA1 | Date | |
---|---|---|---|
|
45437660ba | ||
|
ee93a5b209 | ||
|
4bd0055056 | ||
|
f151c61d7b |
@ -44,7 +44,7 @@ from . import environment
|
||||
|
||||
|
||||
DEPENDENCIES = {
|
||||
("replication", '0.1.6'),
|
||||
("replication", '0.2.0'),
|
||||
}
|
||||
|
||||
|
||||
|
@ -127,9 +127,9 @@ class BlDatablock(ReplicatedDatablock):
|
||||
if instance and hasattr(instance, 'uuid'):
|
||||
instance.uuid = self.uuid
|
||||
|
||||
self.diff_method = DIFF_BINARY
|
||||
# self.diff_method = DIFF_BINARY
|
||||
|
||||
def resolve(self):
|
||||
def resolve(self, construct = True):
|
||||
datablock_ref = None
|
||||
datablock_root = getattr(bpy.data, self.bl_id)
|
||||
datablock_ref = utils.find_from_attr('uuid', self.uuid, datablock_root)
|
||||
@ -138,14 +138,18 @@ class BlDatablock(ReplicatedDatablock):
|
||||
try:
|
||||
datablock_ref = datablock_root[self.data['name']]
|
||||
except Exception:
|
||||
if construct:
|
||||
name = self.data.get('name')
|
||||
logging.debug(f"Constructing {name}")
|
||||
datablock_ref = self._construct(data=self.data)
|
||||
|
||||
if datablock_ref:
|
||||
if datablock_ref is not None:
|
||||
setattr(datablock_ref, 'uuid', self.uuid)
|
||||
|
||||
self.instance = datablock_ref
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
|
||||
def remove_instance(self):
|
||||
"""
|
||||
|
@ -697,10 +697,12 @@ def sanitize_deps_graph(dummy):
|
||||
A future solution should be to avoid storing dataclock reference...
|
||||
|
||||
"""
|
||||
|
||||
if session and session.state['STATE'] == STATE_ACTIVE:
|
||||
for node_key in session.list():
|
||||
session.get(node_key).resolve()
|
||||
|
||||
node = session.get(node_key)
|
||||
if node and not node.resolve(construct=False):
|
||||
session.remove(node_key)
|
||||
|
||||
@persistent
|
||||
def load_pre_handler(dummy):
|
||||
|
Loading…
Reference in New Issue
Block a user