Ctrl-C when bzr asks for password causes no more input to be visible in terminal

Bug #1011077 reported by cyli
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
New
Undecided
Unassigned
Breezy
Triaged
Low
Unassigned

Bug Description

This seems like a duplication/reoccurrence of this bug: https://bugs.launchpad.net/bzr/+bug/48923

bzr pull bzr+ssh://[whatever]

Password: (here I hit Ctrl-C)
bzr: interrupted
Password:cyli@vetinari:~/Settings$
Password:
Permission denied (publickey,keyboard-interactive).
^C
cyli@vetinari:~/Settings$

Text no longer appears, although it obviously has an effect (although the rest of the text gets messed up). Here is me typing 'ls' afterward:

cyli@vetinari:~/Settings$ authorized_keys bazaar.conf general_setup.sh install.py linux_setup.pyc setup_combinator ubuntu_bashrc
bashrc brew_setup.sh gitconfig linux_setup.py prompt_ps1 Sublime virtualenvs

Typing 'reset' fixes the problem.

Also, this seems to be intermittent, as I reproduced it 5 times in a row, then it worked fine twice, and failed again another four times.

---

Bazaar (bzr) 2.5.1
  Python interpreter: /usr/bin/python 2.7.3
  Python standard library: /usr/lib/python2.7
  Platform: Linux-3.2.0-25-generic-x86_64-with-Ubuntu-12.04-precise
  bzrlib: /usr/lib/python2.7/dist-packages/bzrlib
  Bazaar configuration: /home/cyli/.bazaar
  Bazaar log file: /home/cyli/.bzr.log

This is probably unhelpful, as this traceback from the .bzr.log is just because I hit Ctrl-C, and occurs whether or not my terminal gets messed up, but I'll include it anyway.

Sun 2012-06-10 00:00:23 -0700
0.046 bazaar version: 2.5.1
0.046 bzr arguments: [u'pull']
0.048 looking for plugins in /home/cyli/.bazaar/plugins
0.048 looking for plugins in /usr/lib/python2.7/dist-packages/bzrlib/plugins
0.067 encoding stdout as sys.stdout encoding 'UTF-8'
0.087 opening working tree '/home/cyli/Settings'
0.142 ssh implementation is OpenSSH
1.330 Transferred: 0kB (0.1kB/s r:0kB w:0kB)
1.340 Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 920, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 1131, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 673, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 695, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 136, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/builtins.py", line 1222, in run
    possible_transports=possible_transports)
  File "/usr/lib/python2.7/dist-packages/bzrlib/branch.py", line 185, in open
    possible_transports=possible_transports, _unsupported=_unsupported)
  File "/usr/lib/python2.7/dist-packages/bzrlib/controldir.py", line 687, in open
    _unsupported=_unsupported)
  File "/usr/lib/python2.7/dist-packages/bzrlib/controldir.py", line 721, in open_from_transport
    return format.open(transport, _found=True)
  File "/usr/lib/python2.7/dist-packages/bzrlib/bzrdir.py", line 1499, in open
    return self._open(transport)
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 317, in _open
    return RemoteBzrDir(transport, self)
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 436, in __init__
    self._probe_bzrdir()
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 448, in _probe_bzrdir
    self._rpc_open_2_1(path)
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 455, in _rpc_open_2_1
    response = self._call('BzrDir.open_2.1', path)
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 73, in _call
    return self._client.call(method, *args)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 59, in call
    result, protocol = self.call_expecting_body(method, *args)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 72, in call_expecting_body
    method, args, expect_response_body=True)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 55, in _call_and_read_response
    return request.call_and_read_response()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 155, in call_and_read_response
    return self._call_determining_protocol_version()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 218, in _call_determining_protocol_version
    response_tuple, response_handler = self._call(protocol_version)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 192, in _call
    expect_body=self.expect_response_body)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/message.py", line 301, in read_response_tuple
    self._wait_for_response_args()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/message.py", line 266, in _wait_for_response_args
    self._read_more()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/message.py", line 279, in _read_more
    bytes = self._medium_request.read_bytes(next_read_size)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 611, in read_bytes
    return self._read_bytes(count)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 623, in _read_bytes
    return self._medium.read_bytes(count)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 154, in read_bytes
    return self._read_bytes(bytes_to_read)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 1036, in _read_bytes
    return self._real_medium.read_bytes(count)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 154, in read_bytes
    return self._read_bytes(bytes_to_read)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 1077, in _read_bytes
    self._socket, self._report_activity)
  File "/usr/lib/python2.7/dist-packages/bzrlib/osutils.py", line 2085, in read_bytes_from_socket
    bytes = sock.recv(max_read_size)
KeyboardInterrupt

1.344 return code 3

Tags: ui
Jelmer Vernooij (jelmer)
tags: added: check-for-breezy
Jelmer Vernooij (jelmer)
tags: added: ui
removed: check-for-breezy
Changed in brz:
status: New → Triaged
importance: Undecided → Low
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.