From a28bd4a5fa8272c436f67c1555b36e96e2d831d7 Mon Sep 17 00:00:00 2001 From: Pieter Naaijkens Date: Sun, 12 Jun 2011 12:29:31 +0200 Subject: [PATCH] Use atexit.register to cleanup after shutdown --- radicale.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/radicale.py b/radicale.py index a5dd44f9..ed88a4a6 100755 --- a/radicale.py +++ b/radicale.py @@ -32,6 +32,7 @@ Launch the server according to configuration and command-line options. """ +import atexit import os import sys import optparse @@ -101,6 +102,14 @@ if options.daemon: sys.exit() sys.stdout = sys.stderr = open(os.devnull, "w") +# Register exit function +def cleanup(): + radicale.log.LOGGER.debug("Cleaning up") + # Remove PID file + if options.pid and options.daemon: + os.unlink(options.pid) + +atexit.register(cleanup) radicale.log.LOGGER.info("Starting Radicale") # Create calendar servers @@ -159,7 +168,3 @@ finally: "Closing server listening to %s port %s" % ( server.server_name, server.server_port)) server.shutdown() - - # Remove PID file - if options.pid and options.daemon: - os.unlink(options.pid)