mercurial/commands.py
changeset 836 1fe3b14c7044
parent 826 16700cdd9055
parent 832 b65773f7db41
child 839 9c918287d10b
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -1419,7 +1419,14 @@ def dispatch(args):
     except SignalInterrupt:
         u.warn("killed!\n")
     except KeyboardInterrupt:
-        u.warn("interrupted!\n")
+        try:
+            u.warn("interrupted!\n")
+        except IOError, inst:
+            if inst.errno == errno.EPIPE:
+                if u.debugflag:
+                    u.warn("\nbroken pipe\n")
+            else:
+                raise
     except IOError, inst:
         if hasattr(inst, "code"):
             u.warn("abort: %s\n" % inst)