[Bash-completion-devel] Bug#668265: Enabling 'set -e' in the shell causes bash-completion to terminate the shell.

Shalom Bhooshi s.bhooshi at gmail.com
Tue Apr 10 10:28:23 UTC 2012


Package: bash-completion
Version:    1:1.99-3


BEHAVIOUR
Enabling 'set -e' in the bash shell (either explicitly or via a script
sourced into the shell) causes bash-completion to terminate the
interactive shell in an unexpected fashion. This is probably because
the auto-completion functions throw an error that is not handled and
the 'set -e' which is inherited from the shell by those functions
causes the shell's process to exit immediately - as opposed to the
functions exiting immediately i.e. a failure in the auto-completion
functions (wrongly) affects parent shell.

REPRODUCTION
Enable `set -e` and then attempt to tab complete for some arbitrary
command that has no tab-complete functionality e.g.

SIMILAR BUGS
Bug #666933 (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=666933)
is a similar bug.


$ dpkg -l | grep -i bash
ii  bash                                       4.2-1      GNU Bourne Again SHell
ii  bash-builtins                            4.2-1      Bash loadable
builtins - headers & examples
ii  bash-completion                      1:1.99-3  programmable
completion for the bash shell
ii  bash-doc                                 4.2-1      Documentation
and examples for the The GNU Bourne Again SHell


$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux testing (wheezy)
Release:        testing
Codename:       wheezy

-- 
Shalom Bhooshi <s.bhooshi at gmail.com>





More information about the Bash-completion-devel mailing list