home *** CD-ROM | disk | FTP | other *** search
- This file documents the bugs fixed between this release, bash-1.14.3,
- and the last bash release, 1.14.2.
-
- 1. Bugs fixed in Bash
-
- a. There is no longer a too-easy-to-type C-e vi-mode key binding that
- switches into emacs mode.
-
- b. A bug in bashline.c was corrected so that the vi-mode specific features
- are installed at initialization time.
-
- c. Hostname completion now looks for HOSTFILE before hostname_completion_file
-
- d. A bug was fixed that caused command substitution command completion to
- return a corrupted list of matches.
-
- e. A bug was fixed that prevented a backslash from escaping a brace to
- inhibit brace expansion.
-
- f. A bug that caused the wrong readline keymap to be used if bind -m failed
- was fixed.
-
- g. A stray `\r' was removed from an error message printed when bash cannot
- find the current directory at startup.
-
- h. `exec' no longer tries to manipulate the job control state if in
- a subshell.
-
- i. `exec' in a subshell exits unconditionally on failure.
-
- j. If `exec' does not exit after execve() failure, bash reinitializes the
- signal handlers.
-
- k. Fixed a bug that caused ~/.bash_logout to be executed multiple times if
- it contained a call to `exit'.
-
- l. `read' now strips IFS white space from the beginning of the line read.
-
- m. `read' uses " \t\n" to split words if IFS is unset.
-
- n. A bug was fixed so that `read' will return partial lines on EOF.
-
- o. `read' now checks that the variable names supplied as arguments are
- legal shell identifiers.
-
- p. `help select' and `help variables' now work.
-
- q. A bug was fixed that made `readonly -n' turn off a variable's readonly
- status.
-
- r. `shift' now does nothing but print an error message if the supplied
- count exceeds the number of positional parameters.
-
- s. A bug that caused `.' to set the wrong exit value for the shell if the
- filename argument was not found was fixed.
-
- t. `.' now prints an error message if no filename is supplied, rather than
- failing silently.
-
- u. Fixes to `ulimit' were made to accommodate versions of unix where the
- resource limit type is not a `long'.
-
- v. References to $< were removed from cpp-Makefile except in suffix pattern
- rules.
-
- w. A bug was fixed that prevented an `exit' command called in an exit trap
- from setting the shell's exit status.
-
- x. `for' and `select' no longer make the mistake of processing any of the
- words as variable assignments.
-
- y. A bug that caused `select' to dump core with empty lists was fixed.
-
- z. A bug was fixed that caused command lookup to not find any executables if
- PATH was unset or null.
-
- aa. Arithmetic evaluation error reporting is now much neater.
-
- bb. Job control now uses file descriptor 2 to reach the terminal rather than
- trying to open /dev/tty.
-
- cc. A bug that caused memory leaks in the filename globbing library was fixed.
-
- dd. Fixes to several machine descriptions: NetBSD, Ultrix, HPUX 8, HPUX 9,
- Cray, FreeBSD.
-
- ee. A bug was fixed that prevented `set -o emacs' and `set -o vi' from
- working correctly in files read by `.' or in `eval' commands.
-
- ff. Fixed a bug that caused syntax errors if a character with value octal
- 255 appeared in a script.
-
- gg. Prompt expansion no longer performs word splitting after variable and
- parameter expansion on the prompt string.
-
- hh. A bug that caused /etc/profile to be sourced by a login shell even if
- -noprofile was gived has been fixed.
-
- ii. If invoked non-interactively as `sh', bash no longer tries to expand
- and source $ENV
-
- jj. A bug was fixed that caused syntax and substitution errors in a shell
- started as `bash -c command' to return incorrect exit values.
-
- kk. A bug was fixed that caused $PROMPT_COMMAND to be executed when using
- `eval' in an interactive shell.
-
- ll. Interactive shells now send SIGHUP to their children if a SIGHUP is
- received. Previously, only login shells propagated SIGHUP.
-
- mm. Fixed a bug that caused command substitution to set the SIGINT handler
- incorrectly in the calling shell.
-
- nn. Fixed a bug with command substitution that occasionally caused processes
- to be placed into the wrong process group.
-
- oo. Fixed a bug that prevented SIGINT from being ignored after
- `trap '' SIGINT' in an interactive shell.
-
- pp. Command substitution no longer inherits the -e flag from the calling shell.
-
- qq. Assignment statements not preceding a command name are not split or
- globbed.
-
- rr. Fixed a bug that caused escaped double quotes in a double-quoted string to
- be incorrectly removed.
-
- ss. Fixes were made to bashbug to work around ultrix and rmail problems.
-
- tt. A bug was fixed that caused trap handlers which attempted to reset
- traps in functions that were called by the handler to set them to
- bogus values.
-
- uu. A bug was fixed that caused $BASH to be set to a bogus value if there was
- no `bash' executable in the path.
-
- vv. A bug that caused loops to be broken inappropriately if any child
- was stopped was fixed.
-
- ww. bashbug.sh now tries to use /usr/lib/sendmail -t or /usr/sbin/sendmail -t
- if present.
-
- xx. A bug that caused rl_completion_entry_function to be set incorrectly if
- readline completion was interrupted has been fixed.
-
- yy. A bug has been fixed that caused core dumps if a `)' was missing in a
- parenthesized `test' expression.
-
- zz. A bug causing incorrect results when using the ${param:-word} form of
- parameter expansion was fixed.
-
- 2. Bugs fixed in Readline
-
- a. A completion bug was fixed that caused matches containing 8-bit characters
- to be scrambled.
-
- b. Username completion now produces all usernames as possible completions
- after ~M-?.
-
- c. A bug that caused spurious clear-to-eol terminal sequences to be sent
- by the display code was fixed.
-
- d. A bug was fixed that caused the display code to sometimes calculate the
- line on which to place the cursor incorrectly.
-
- e. A bug was fixed that caused the history library to corrupt the readline
- buffer if !$ was used after a command with no arguments.
-
- f. Fixed a bug in keymap initialization that manifested itself if RUBOUT was
- not decimal 127.
-
- g. Readline no longer tries to expand null or empty prompts.
-
- h. Fixed a bug with macro definitions that caused meta characters to be
- added incorrectly.
-
- i. Fixed a bug that caused LC_CTYPE interpretation to be performed every
- time readline was called and did not allow those values to be overridden
- by ~/.inputrc.
-
- j. Fixed a bug in rl_delete_text that caused buffer overruns.
-
- k. Fixed a bug that prevented unix-word-rubout from accepting repeat counts.
-
- l. Readline no longer calls abort().
-
- m. Readline no longer tries to manipulate the application keypad.
-
- n. Fixed a bug that caused readline to spin in a loop if tcgetattr failed
- after ^O was used to flush output.
-
- o. A bug was fixed that caused vi-mode history searches to leave the history
- pointer at the wrong position.
-
- p. A bug was fixed that caused the vi-mode `d%' and `c%' to delete one too
- few characters.
-
- q. A bug was fixed that caused the vi-mode `s' command to delete one too few
- characters at the end of a line.
-
- r. Readline now initializes keymaps up to a full 8 bits.
-
- s. A 257-character static limit on the length of the username to be tilde
- expanded was removed.
-