diff --git a/multi_user/bl_types/bl_file.py b/multi_user/bl_types/bl_file.py index 6b07c43..f05ee18 100644 --- a/multi_user/bl_types/bl_file.py +++ b/multi_user/bl_types/bl_file.py @@ -63,6 +63,10 @@ class BlFile(ReplicatedDatablock): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.instance = kwargs.get('instance', None) + + if self.instance and not self.instance.exists(): + raise FileNotFoundError(self.instance) + self.preferences = utils.get_preferences() self.diff_method = DIFF_BINARY diff --git a/multi_user/operators.py b/multi_user/operators.py index 7353823..2cf41bc 100644 --- a/multi_user/operators.py +++ b/multi_user/operators.py @@ -139,11 +139,11 @@ class SessionStartOperator(bpy.types.Operator): runtime_settings.is_host = True runtime_settings.internet_ip = environment.get_ip() - - for scene in bpy.data.scenes: - client.add(scene) - + try: + for scene in bpy.data.scenes: + client.add(scene) + client.host( id=settings.username, port=settings.port,