diff --git a/contrib/hgperf b/contrib/hgperf --- a/contrib/hgperf +++ b/contrib/hgperf @@ -94,4 +94,4 @@ dispatch.runcommand = runcommand -dispatch.run() +sys.exit(dispatch.run()) diff --git a/hg b/hg --- a/hg +++ b/hg @@ -38,4 +38,4 @@ sys.exit(-1) from mercurial import dispatch -dispatch.run() +sys.exit(dispatch.run()) diff --git a/mercurial/dispatch.py b/mercurial/dispatch.py --- a/mercurial/dispatch.py +++ b/mercurial/dispatch.py @@ -126,7 +126,7 @@ status = -1 _silencestdio() - sys.exit(status & 255) + return status & 255 if pycompat.ispy3: def initstdio():