diff -r b844d0d367e2 -r cde72a195f32 mercurial/dispatch.py --- a/mercurial/dispatch.py Sat Apr 15 13:04:55 2017 +0900 +++ b/mercurial/dispatch.py Mon Apr 17 23:53:19 2017 +0900 @@ -165,6 +165,10 @@ except KeyboardInterrupt: try: req.ui.warn(_("interrupted!\n")) + except error.SignalInterrupt: + # maybe pager would quit without consuming all the output, and + # SIGPIPE was raised. we cannot print anything in this case. + pass except IOError as inst: if inst.errno != errno.EPIPE: raise