Handle shutdown request properly if not file server is running

This commit is contained in:
shortcutme 2018-04-04 15:33:25 +02:00
parent d927e85eca
commit 026b6a4b01
No known key found for this signature in database
GPG Key ID: 5B63BAE6CB9613AE
1 changed files with 11 additions and 8 deletions

View File

@ -10,13 +10,16 @@ last_error = None
def shutdown():
print "Shutting down..."
try:
if "file_server" in dir(sys.modules["main"]):
gevent.spawn(sys.modules["main"].file_server.stop)
if "ui_server" in dir(sys.modules["main"]):
gevent.spawn(sys.modules["main"].ui_server.stop)
except Exception, err:
print "Proper shutdown error: %s" % err
if "file_server" in dir(sys.modules["main"]) and sys.modules["main"].file_server.running:
try:
if "file_server" in dir(sys.modules["main"]):
gevent.spawn(sys.modules["main"].file_server.stop)
if "ui_server" in dir(sys.modules["main"]):
gevent.spawn(sys.modules["main"].ui_server.stop)
except Exception, err:
print "Proper shutdown error: %s" % err
sys.exit(0)
else:
sys.exit(0)
# Store last error, ignore notify, allow manual error logging
@ -94,4 +97,4 @@ if __name__ == "__main__":
thread1.kill(exception=Debug.Notify("Worker stopped"))
#thread2.throw(Debug.Notify("Throw"))
print "killed"
gevent.joinall([thread1,thread2])
gevent.joinall([thread1,thread2])