From 61ccced12cbd2099980cc1ada5442038b0468dd0 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Wed, 22 Feb 2017 13:35:34 -0800 Subject: [PATCH] Properly handle KeyboardInterrupt exception in CLI in macOS --- onionshare/__init__.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/onionshare/__init__.py b/onionshare/__init__.py index 8de8fa16..d05e08e6 100644 --- a/onionshare/__init__.py +++ b/onionshare/__init__.py @@ -199,8 +199,10 @@ def main(cwd=None): # wait for app to close while t.is_alive(): - # t.join() can't catch KeyboardInterrupt in such as Ubuntu - t.join(0.5) + t.join() + # allow KeyboardInterrupt exception to be handled with threads + # https://stackoverflow.com/questions/3788208/python-threading-ignores-keyboardinterrupt-exception + time.sleep(100) except KeyboardInterrupt: web.stop(app.port) finally: