diff --git a/openwebrx.py b/openwebrx.py index d4ebddd..4d755be 100755 --- a/openwebrx.py +++ b/openwebrx.py @@ -60,3 +60,4 @@ if __name__ == "__main__": main() except KeyboardInterrupt: WebSocketConnection.closeAll() + Services.stop() diff --git a/owrx/service.py b/owrx/service.py index ec86ad8..7a583c3 100644 --- a/owrx/service.py +++ b/owrx/service.py @@ -369,12 +369,19 @@ class AprsHandler(object): class Services(object): + handlers = [] @staticmethod def start(): if not PropertyManager.getSharedInstance()["services_enabled"]: return for source in SdrService.getSources().values(): - ServiceHandler(source) + Services.handlers.append(ServiceHandler(source)) + + @staticmethod + def stop(): + for handler in Services.handlers: + handler.stopServices() + Services.handlers = [] class Service(object):