diff --git a/contrib/showstack.py b/contrib/showstack.py --- a/contrib/showstack.py +++ b/contrib/showstack.py @@ -4,7 +4,7 @@ """dump stack trace when receiving SIGQUIT (Ctrl-\) and SIGINFO (Ctrl-T on BSDs) """ -from __future__ import absolute_import +from __future__ import absolute_import, print_function import signal import sys import traceback @@ -14,8 +14,14 @@ traceback.print_stack(args[1], limit=10, file=sys.stderr) sys.stderr.write("----\n") +def sigexit(*args): + sigshow(*args) + print('alarm!') + sys.exit(1) + def extsetup(ui): signal.signal(signal.SIGQUIT, sigshow) + signal.signal(signal.SIGALRM, sigexit) try: signal.signal(signal.SIGINFO, sigshow) except AttributeError: