From e9212ff898d4401b436774dce36620b5f78a67c4 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sun, 13 Feb 2022 12:35:33 +0100 Subject: [PATCH] Better handle error on webserver startup. Resolve #2057 --- evennia/server/webserver.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/evennia/server/webserver.py b/evennia/server/webserver.py index c2b3cad014..3a8b8a17c7 100644 --- a/evennia/server/webserver.py +++ b/evennia/server/webserver.py @@ -276,16 +276,25 @@ class WSGIWebServer(internet.TCPServer): Start the pool after the service starts. """ - super().startService() - self.pool.start() + try: + super().startService() + self.pool.start() + except Exception: + logger.log_trace("Webserver did not start correctly. Disabling.") + self.stopService() def stopService(self): """ Safely stop the pool after the service stops. """ - super().stopService() - self.pool.stop() + try: + super().stopService() + except Exception: + logger.log_trace("Webserver stopService error.") + finally: + if self.pool.started: + self.pool.stop() class PrivateStaticRoot(static.File):