From: Russ Cox Date: Sun, 29 Jan 2012 17:33:13 +0000 (-0500) Subject: codereview: die if initialized twice X-Git-Tag: weekly.2012-02-07~240 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ba31d662fe52921b8035f4c5d7895d780d66a481;p=gostls13.git codereview: die if initialized twice If this happens, something is misconfigured. If we don't test for this explicitly, MatchAt ends up calling itself recursively forever. R=golang-dev, r CC=golang-dev https://golang.org/cl/5576066 --- diff --git a/lib/codereview/codereview.py b/lib/codereview/codereview.py index 5730bc2a8e..1957d7cbb7 100644 --- a/lib/codereview/codereview.py +++ b/lib/codereview/codereview.py @@ -2171,10 +2171,21 @@ def norollback(*pats, **opts): """(disabled when using this extension)""" raise hg_util.Abort("codereview extension enabled; use undo instead of rollback") +codereview_init = False + def reposetup(ui, repo): global codereview_disabled global defaultcc + global codereview_init + if codereview_init: + raise hg_util.Abort("codereview extension initialized twice") + codereview_init = True + + remote = ui.config("paths", "default", "") + if remote.find("://") < 0: + raise hg_util.Abort("codereview: default path '%s' is not a URL" % (remote,)) + # Read repository-specific options from lib/codereview/codereview.cfg or codereview.cfg. root = '' try: