diff -r e6db25785b00 -r fbe8834923c5 mercurial/commands.py --- a/mercurial/commands.py Fri Jun 17 09:32:13 2005 -0800 +++ b/mercurial/commands.py Fri Jun 17 11:03:44 2005 -0800 @@ -752,7 +752,11 @@ except KeyboardInterrupt: u.warn("interrupted!\n") except IOError, inst: - if inst.errno == errno.EPIPE: + if hasattr(inst, "code"): + u.warn("abort: %s\n" % inst) + elif hasattr(inst, "reason"): + u.warn("abort: error %d: %s\n" % (inst.reason[0], inst.reason[1])) + elif hasattr(inst, "args") and inst[0] == errno.EPIPE: u.warn("broken pipe\n") else: raise