Mercurial > hg
view contrib/showstack.py @ 36429:f8ea6988a5fb
hgweb: pass exception message to builtin Exception ctor as sysstr
If we don't do this, the bytes gets repr()ed on Python 3 and we get
bogus error strings sent to clients. Ick.
Differential Revision: https://phab.mercurial-scm.org/D2447
author | Augie Fackler <augie@google.com> |
---|---|
date | Mon, 26 Feb 2018 00:49:33 -0500 |
parents | c9eb92fb87b7 |
children | acf5dbe39478 |
line wrap: on
line source
# showstack.py - extension to dump a Python stack trace on signal # # binds to both SIGQUIT (Ctrl-\) and SIGINFO (Ctrl-T on BSDs) """dump stack trace when receiving SIGQUIT (Ctrl-\) and SIGINFO (Ctrl-T on BSDs) """ from __future__ import absolute_import import signal import sys import traceback def sigshow(*args): sys.stderr.write("\n") traceback.print_stack(args[1], limit=10, file=sys.stderr) sys.stderr.write("----\n") def extsetup(ui): signal.signal(signal.SIGQUIT, sigshow) try: signal.signal(signal.SIGINFO, sigshow) except AttributeError: pass