diff -r e48cc2315fe6 -r 57fee79e5588 mercurial/ui.py --- a/mercurial/ui.py Wed Feb 04 22:12:55 2009 +0100 +++ b/mercurial/ui.py Sat Feb 21 17:46:06 2009 -0600 @@ -439,7 +439,10 @@ def getpass(self, prompt=None, default=None): if not self.interactive: return default - return getpass.getpass(prompt or _('password: ')) + try: + return getpass.getpass(prompt or _('password: ')) + except EOFError: + raise util.Abort(_('response expected')) def status(self, *msg): if not self.quiet: self.write(*msg) def warn(self, *msg):