diff -r 71dcd4a4fa2f -r db823e38a61c mercurial/ui.py --- a/mercurial/ui.py Tue Apr 11 14:54:12 2017 -0700 +++ b/mercurial/ui.py Tue Apr 11 14:54:12 2017 -0700 @@ -768,6 +768,8 @@ try: for a in msgs: self.fout.write(a) + except IOError as err: + raise error.StdioError(err) finally: self._blockedtimes['stdio_blocked'] += \ (util.timer() - starttime) * 1000