diff options
-rw-r--r-- | pelican/__init__.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pelican/__init__.py b/pelican/__init__.py index a3298ff7..84ec9a49 100644 --- a/pelican/__init__.py +++ b/pelican/__init__.py @@ -476,6 +476,12 @@ def listen(server, port, output, excqueue=None): excqueue.put(traceback.format_exception_only(type(e), e)[-1]) return + except KeyboardInterrupt: + stop_msg = "Keyboard interrupt received. Shutting down server." + logger.info(stop_msg) + print("\n{}".format(stop_msg)) + httpd.socket.close() + def main(argv=None): args = parse_arguments(argv) |