feat: error handling during disconnection

fix: various session disctonnect error (replication submodule)
This commit is contained in:
Swann Martinez
2020-02-21 12:00:34 +01:00
parent 56a625ae48
commit 7d989faae6
2 changed files with 10 additions and 9 deletions

View File

@ -159,23 +159,24 @@ class SessionStopOperator(bpy.types.Operator):
def execute(self, context): def execute(self, context):
global client, delayables, stop_modal_executor, server_process global client, delayables, stop_modal_executor, server_process
assert(client)
if server_process:
server_process.kill()
stop_modal_executor = True stop_modal_executor = True
settings = context.window_manager.session settings = context.window_manager.session
settings.is_admin = False settings.is_admin = False
assert(client)
client.disconnect()
for d in delayables: for d in delayables:
try: try:
d.unregister() d.unregister()
except: except:
continue continue
presence.renderer.stop() presence.renderer.stop()
try:
client.disconnect()
except Exception as e:
self.report({'ERROR'}, repr(e))
client = None
return {"FINISHED"} return {"FINISHED"}