bash killed by filecompletion feature if filename(s) contain '*' character
Configuration Information [Automatically generated, do not change]: Machine: i686 OS: linux-gnu Compiler: i686-pc-linux-gnu-gcc Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='i686' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i686-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -DDEFAULT_PATH_VALUE='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' -DSTANDARD_UTILS_PATH='/bin:/usr/bin:/sbin:/usr/sbin' -DSYS_BASHRC='/etc/bash/bashrc' -DSYS_BASH_LOGOUT='/etc/bash/bash_logout' -DNON_INTERACTIVE_LOGIN_SHELLS -DSSH_SOURCE_BASHRC -O2 -march=pentium4 -pipe -fomit-frame-pointer uname output: Linux coyote 2.6.31-gentoo-r6 #1 SMP Fri Nov 27 20:29:02 CET 2009 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GenuineIntel GNU/Linux Machine Type: i686-pc-linux-gnu Bash Version: 4.0 Patch Level: 35 Release Status: release Description: bash died while word completion if filename contains a '*' character Repeat-By: touch file\*1 touch file\*2 chmod +x file* ./file[tab][tab]
Re: bash killed by filecompletion feature if filename(s) contain '*' character
On Sat, 30 Jan 2010, coy...@wariat.org.pl wrote: Configuration Information [Automatically generated, do not change]: Machine: i686 OS: linux-gnu Compiler: i686-pc-linux-gnu-gcc Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='i686' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i686-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -DDEFAULT_PATH_VALUE='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' -DSTANDARD_UTILS_PATH='/bin:/usr/bin:/sbin:/usr/sbin' -DSYS_BASHRC='/etc/bash/bashrc' -DSYS_BASH_LOGOUT='/etc/bash/bash_logout' -DNON_INTERACTIVE_LOGIN_SHELLS -DSSH_SOURCE_BASHRC -O2 -march=pentium4 -pipe -fomit-frame-pointer uname output: Linux coyote 2.6.31-gentoo-r6 #1 SMP Fri Nov 27 20:29:02 CET 2009 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GenuineIntel GNU/Linux Machine Type: i686-pc-linux-gnu Bash Version: 4.0 Patch Level: 35 Release Status: release Description: bash died while word completion if filename contains a '*' character Repeat-By: touch file\*1 touch file\*2 chmod +x file* ./file[tab][tab] No problem here in 3.2, 4.0 or 4.1 -- Chris F.A. Johnson http://cfajohnson.com === Author: Shell Scripting Recipes: A Problem-Solution Approach (2005, Apress) Pro Bash Programming: Scripting the GNU/Linux Shell (2009, Apress)
Re: bash killed by filecompletion feature if filename(s) contain '*' character
On 1/30/10 4:17 PM, coy...@wariat.org.pl wrote: Bash Version: 4.0 Patch Level: 35 Release Status: release Description: bash died while word completion if filename contains a '*' character Repeat-By: touch file\*1 touch file\*2 chmod +x file* ./file[tab][tab] The problem is attempting to recompute already-computed information. Try the attached patch: Chet -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, ITS, CWRUc...@case.eduhttp://cnswww.cns.cwru.edu/~chet/ *** ../bash-4.1-patched/bashline.c 2009-10-24 14:10:19.0 -0400 --- bashline.c 2010-01-30 21:53:49.0 -0500 *** *** 1681,1685 characters in the common prefix are bad) will ever be returned on regular completion. */ ! if (glob_pattern_p (hint)) { if (state == 0) --- 1681,1685 characters in the common prefix are bad) will ever be returned on regular completion. */ ! if (globpat) { if (state == 0)