Mercurial > hg
view hg @ 12766:21a50fe47a92
interhg: use uisetup() instead of module-load side effects
This fixes an infinite recursion bug caused by visiting a bad subpage
of the help handler repeatedly, which caused the wrapper for the
templater's escape filter to get installed twice and resulted in
infinite recursion.
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Sat, 16 Oct 2010 18:09:47 -0500 |
parents | 10da5a1f25dd |
children | cae1c187abd4 |
line wrap: on
line source
#!/usr/bin/env python # # mercurial - scalable distributed SCM # # Copyright 2005-2007 Matt Mackall <mpm@selenic.com> # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. import os import sys libdir = '@LIBDIR@' if libdir != '@' 'LIBDIR' '@': if not os.path.isabs(libdir): libdir = os.path.join(os.path.dirname(__file__), libdir) libdir = os.path.abspath(libdir) sys.path.insert(0, libdir) # enable importing on demand to reduce startup time try: from mercurial import demandimport; demandimport.enable() except ImportError: import sys sys.stderr.write("abort: couldn't find mercurial libraries in [%s]\n" % ' '.join(sys.path)) sys.stderr.write("(check your install and PYTHONPATH)\n") sys.exit(-1) import mercurial.util import mercurial.dispatch for fp in (sys.stdin, sys.stdout, sys.stderr): mercurial.util.set_binary(fp) mercurial.dispatch.run()