bash:bash.git
7 years agoAdded a git ignore file maintenance/4.2
Bradley M. Kuhn [Sat, 4 Jun 2011 23:30:54 +0000 (19:30 -0400)]
Added a git ignore file

7 years agoPatch-ID: bash42-010
Chet Ramey [Thu, 14 Apr 2011 14:43:18 +0000 (10:43 -0400)]
Patch-ID: bash42-010

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <201104122356.20160.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-04/msg00058.html

Bug-Description:

Bash did not correctly print/reproduce here documents attached to commands
inside compound commands such as arithmetic for loops and user-specified
subshells.  This affected the execution of such commands inside a shell
function when the function definition is saved and later restored using
`.' or `eval'.

This patch, in file bash42-010, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-010.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 01 May 2011 08:32:15 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-009
Chet Ramey [Tue, 19 Apr 2011 19:46:17 +0000 (15:46 -0400)]
Patch-ID: bash42-009

Bug-Reported-by: <piuma@piumalab.org>
Bug-Reference-ID: <4DAAC0DB.7060606@piumalab.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-04/msg00075.html

Bug-Description:

Under certain circumstances, running `fc -l' two times in succession with a
relative history offset at the end of the history will result in an incorrect
calculation of the last history entry and a seg fault.

This patch, in file bash42-009, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-009.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 01 May 2011 08:32:08 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-008
Chet Ramey [Wed, 9 Mar 2011 02:28:32 +0000 (21:28 -0500)]
Patch-ID: bash42-008

Bug-Reported-by: Doug McMahon <mc2man@optonline.net>
Bug-Reference-ID: <1299441211.2535.11.camel@doug-XPS-M1330>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00050.html

Bug-Description:

Bash-4.2 does not attempt to save the shell history on receipt of a
terminating signal that is handled synchronously.  Unfortunately, the
`close' button on most X11 terminal emulators sends SIGHUP, which
kills the shell.

This is a very small patch to save the history in the case that an
interactive shell receives a SIGHUP or SIGTERM while in readline and
reading a command.

The next version of bash will do this differently.

This patch, in file bash42-008, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-008.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 14 Mar 2011 03:25:57 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-007
Chet Ramey [Thu, 3 Mar 2011 19:08:23 +0000 (14:08 -0500)]
Patch-ID: bash42-007

Bug-Reported-by: Matthias Klose <doko@debian.org>
Bug-Reference-ID: <4D6FD2AC.1010500@debian.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00015.html

Bug-Description:

When used in contexts where word splitting and quote removal were not
performed, such as case statement word expansion, empty strings
(either literal or resulting from quoted variables that were unset or
null) were not expanded correctly, resulting in failure.

This patch, in file bash42-007, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-007.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 06 Mar 2011 02:10:26 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-006
Chet Ramey [Tue, 1 Mar 2011 15:13:04 +0000 (10:13 -0500)]
Patch-ID: bash42-006

Bug-Reported-by: Allan McRae <allan@archlinux.org>
Bug-Reference-ID: <4D6D0D0B.50908@archlinux.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00001.html

Bug-Description:

A problem with bash42-005 caused it to dump core if TZ was unset.

This patch, in file bash42-006, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-006.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 01 Mar 2011 07:57:13 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-005
Chet Ramey [Sun, 20 Feb 2011 00:57:12 +0000 (19:57 -0500)]
Patch-ID: bash42-005

Bug-Reported-by: Dennis Williamson <dennistwilliamson@gmail.com>
Bug-Reference-ID: <AANLkTikDbEV5rnbPc0zOfmZfBcg0xGetzLLzK+KjRiNa@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00147.html

Bug-Description:

Systems that use tzset() to set the local timezone require the TZ variable
to be in the environment.  Bash must make sure the environment has been
modified with any updated value for TZ before calling tzset().  This
affects prompt string expansions and the `%T' printf conversion specification
on systems that do not allow bash to supply a replacement for getenv(3).

This patch, in file bash42-005, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-005.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 25 Feb 2011 04:40:40 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-004
Chet Ramey [Sat, 19 Feb 2011 03:30:13 +0000 (22:30 -0500)]
Patch-ID: bash42-004

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <201102182106.17834.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00222.html

Bug-Description:

When used in contexts where word splitting and quote removal were not
performed, such as pattern removal or pattern substitution, empty strings
(either literal or resulting from quoted variables that were unset or
null) were not matched correctly, resulting in failure.

This patch, in file bash42-004, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-004.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 25 Feb 2011 04:40:37 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-003
Chet Ramey [Sat, 19 Feb 2011 04:53:42 +0000 (23:53 -0500)]
Patch-ID: bash42-003

Bug-Reported-by: Clark J. Wang <dearvoid@gmail.com>
Bug-Reference-ID: <AANLkTikZ_rVV-frR8Fh0PzhXnMKnm5XsUR-F3qtPPs5G@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00136.html

Bug-Description:

When using the pattern replacement and pattern removal word expansions, bash
miscalculates the possible match length in the presence of an unescaped left
bracket without a closing right bracket, resulting in a failure to match
the pattern.

This patch, in file bash42-003, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-003.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 25 Feb 2011 04:40:33 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-002
Chet Ramey [Fri, 18 Feb 2011 01:24:25 +0000 (20:24 -0500)]
Patch-ID: bash42-002

Bug-Reported-by: Clark J. Wang <dearvoid@gmail.com>
Bug-Reference-ID: <AANLkTimGbW7aC4E5infXP6ku5WPci4t=xVc+L1SyHqrD@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00157.html

Bug-Description:

The readline vi-mode `cc', `dd', and `yy' commands failed to modify the
entire line.

This patch, in file bash42-002, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-002.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 25 Feb 2011 04:40:28 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoPatch-ID: bash42-001
Chet Ramey [Sat, 19 Feb 2011 05:00:00 +0000 (00:00 -0500)]
Patch-ID: bash42-001

Bug-Reported-by: Juergen Daubert <jue@jue.li>
Bug-Reference-ID: <20110214175132.GA19813@jue.netz>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00125.html

Bug-Description:

When running in Posix mode, bash does not correctly expand the right-hand
side of a double-quoted word expansion containing single quotes.

This patch, in file bash42-001, was downloaded from ftp.gnu.org on 2011-05-29,
and bash42-001.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 25 Feb 2011 04:40:24 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

7 years agoGNU Bash 4.2 as released on ftp.gnu.org.
Chet Ramey [Tue, 15 Feb 2011 01:37:02 +0000 (20:37 -0500)]
GNU Bash 4.2 as released on ftp.gnu.org.

The contents of this commit were downloaded from
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2.tar.gz on 2011-05-29, and the
signature available at ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2.tar.gz.sig
was verified as follows:
gpg: Signature made Sun Feb 13 15:27:23 2011 EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

Below is Chet's announcement of Bash 4.2, as posted to <bug-bash@gnu.org>.

From chet@caleb.INS.CWRU.Edu Mon Feb 14 20:37:43 2011
Date: Mon, 14 Feb 2011 20:37:02 -0500
From: Chet Ramey <chet.ramey@case.edu>
To: bug-bash@gnu.org
Message-ID: <110215013702.AA35082.SM@caleb.INS.CWRU.Edu>
Cc: chet.ramey@case.edu
Subject: Bash-4.2 available for FTP

Introduction
============

The first public release of bash-4.2 is now available with the URLs

ftp://ftp.cwru.edu/pub/bash/bash-4.2.tar.gz
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2.tar.gz

and from the usual GNU mirror sites.

This tar file includes the formatted documentation (postscript, dvi, html,
and nroffed versions of the manual pages).

Diffs from bash-4.1 are not available.

Please use `bashbug' to report bugs with this version.  It is built
and installed at the same time as bash.

Installation
============

Please read the README file first.

Installation instructions are provided in the INSTALL file.

New Features
============

This is the second revision to the fourth major release of bash.

This release fixes several outstanding bugs in bash-4.1 and introduces
several new features.

The most notable new features are \u and \U unicode character escapes
for the echo and printf builtins and $'...' quoting, a new mechanism
to declare variables with attributes in the global scope from a shell
function, and new word expansion features.  There are also a number of
changes to accommodate recent Posix shell interpretations, changing the
bash posix-mode behavior to align with the newly-intepreted standard.

Read the file NEWS in the bash-4.2 distribution for a complete
description of the new features.  A copy of the relevant portions
is included below.

Changes have been made to the Readline library being released at
the same time as bash-4.2, readline-6.2, so that Bash can be
linked against an already-installed Readline library rather than
the private version in lib/readline.  Only readline-6.0 and later
versions are able to provide all of the symbols that bash-4.2
requires; earlier versions of the Readline library will not work
correctly.

A complete list of changes between bash-4.1 and bash-4.2 is
available in the file CHANGES; the complete list is too large to
include in this message.

Readline
========

Also available is a new release of the standalone Readline library,
version 6.2, with its own configuration scripts and Makefiles.
It can be retrieved with the URLs

ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz
ftp://ftp.gnu.org/pub/gnu/readline/readline-6.2.tar.gz

and from the usual GNU mirror sites.

Diffs from readline-6.1 are not available.

The formatted Readline documentation is included in the readline
distribution tar file.

A separate announcement listing the changes in Readline is being
distributed.

As always, thanks for your help.

Chet

+========== NEWS ==========+
This is a terse description of the new features added to bash-4.2 since
the release of bash-4.1.  As always, the manual page (doc/bash.1) is
the place to look for complete descriptions.

1.  New Features in Bash

a.  `exec -a foo' now sets $0 to `foo' in an executable shell script without a
    leading #!.

b.  Subshells begun to execute command substitutions or run shell functions or
    builtins in subshells do not reset trap strings until a new trap is
    specified.  This allows $(trap) to display the caller's traps and the
    trap strings to persist until a new trap is set.

c.  `trap -p' will now show signals ignored at shell startup, though their
    disposition still cannot be modified.

d.  $'...', echo, and printf understand \uXXXX and \UXXXXXXXX escape sequences.

e.  declare/typeset has a new `-g' option, which creates variables in the
    global scope even when run in a shell function.

f.  test/[/[[ have a new -v variable unary operator, which returns success if
    `variable' has been set.

g.  Posix parsing changes to allow `! time command' and multiple consecutive
    instances of `!' (which toggle) and `time' (which have no cumulative
    effect).

h.  Posix change to allow `time' as a command by itself to print the elapsed
    user, system, and real times for the shell and its children.

j.  $((...)) is always parsed as an arithmetic expansion first, instead of as
    a potential nested command substitution, as Posix requires.

k.  A new FUNCNEST variable to allow the user to control the maximum shell
    function nesting (recursive execution) level.

l.  The mapfile builtin now supplies a third argument to the callback command:
    the line about to be assigned to the supplied array index.

m.  The printf builtin has a new %(fmt)T specifier, which allows time values
    to use strftime-like formatting.

n.  There is a new `compat41' shell option.

o.  The cd builtin has a new Posix-mandated `-e' option.

p.  Negative subscripts to indexed arrays, previously errors, now are treated
    as offsets from the maximum assigned index + 1.

q.  Negative length specifications in the ${var:offset:length} expansion,
    previously errors, are now treated as offsets from the end of the variable.

r.  Parsing change to allow `time -p --'.

s.  Posix-mode parsing change to not recognize `time' as a keyword if the
    following token begins with a `-'.  This means no more Posix-mode
    `time -p'.  Posix interpretation 267.

t.  There is a new `lastpipe' shell option that runs the last command of a
    pipeline in the current shell context.  The lastpipe option has no
    effect if job control is enabled.

u.  History expansion no longer expands the `$!' variable expansion.

v.  Posix mode shells no longer exit if a variable assignment error occurs
    with an assignment preceding a command that is not a special builtin.

w.  Non-interactive mode shells exit if -u is enabled and an attempt is made
    to use an unset variable with the % or # expansions, the `//', `^', or
    `,' expansions, or the parameter length expansion.

x.  Posix-mode shells use the argument passed to `.' as-is if a $PATH search
    fails, effectively searching the current directory.  Posix-2008 change.

2.  New Features in Readline

a.  The history library does not try to write the history filename in the
    current directory if $HOME is unset.  This closes a potential security
    problem if the application does not specify a history filename.

b.  New bindable variable `completion-display-width' to set the number of
    columns used when displaying completions.

c.  New bindable variable `completion-case-map' to cause case-insensitive
    completion to treat `-' and `_' as identical.

d.  There are new bindable vi-mode command names to avoid readline's case-
    insensitive matching not allowing them to be bound separately.

e.  New bindable variable `menu-complete-display-prefix' causes the menu
    completion code to display the common prefix of the possible completions
    before cycling through the list, instead of after.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/

7 years agoPatch-ID: bash41-010
Chet Ramey [Thu, 24 Feb 2011 21:40:48 +0000 (16:40 -0500)]
Patch-ID: bash41-010

Bug-Reported-by: Stephane Jourdois <sjourdois@gmail.com>
Bug-Reference-ID: <AANLkTimbh1t2BmCjnCgACpEidArJMBIEtr30Vv3VzHxf@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-05/msg00165.html

Bug-Description:

The expansion of the \W prompt string escape sequence incorrectly used
strcpy to copy overlapping strings.  Only memmove works in this case.

This patch, in file bash41-010, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-010.sig was furthermore verified, yielding the following output:
gpg: Signature made Thu 24 Feb 2011 07:47:10 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-009
Chet Ramey [Sat, 27 Mar 2010 02:34:11 +0000 (22:34 -0400)]
Patch-ID: bash41-009

Bug-Reported-by: Tomas Trnka <tomastrnka@gmx.com>
Bug-Reference-ID: <201003242030.02166.tomastrnka@gmx.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-03/msg00090.html

Bug-Description:

An arriving SIGCHLD will interrupt `slow' system calls such as write(2) to
or read(2) from a terminal.  This results in an error message and truncated
input or output.

This patch, in file bash41-009, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-009.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 04 Oct 2010 09:27:07 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-008
Chet Ramey [Sun, 30 May 2010 22:25:21 +0000 (18:25 -0400)]
Patch-ID: bash41-008

Bug-Reported-by: Dennis van Dok <dvandok@gmail.com>
Bug-Reference-ID: <4BBF2501.5050703@gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-04/msg00038.html

Bug-Description:

When declaring an associative array and implicitly assigning a value
to element "0", bash does not correctly allocate memory, leading to
a segmentation violation when that element or the array itself is
unset.

This patch, in file bash41-008, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-008.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 04 Oct 2010 09:26:26 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-007
Chet Ramey [Thu, 25 Mar 2010 13:40:56 +0000 (09:40 -0400)]
Patch-ID: bash41-007

Bug-Reported-by: Rob Robason <rob@robason.net>
Bug-Reference-ID: <1269513145.22336.9.camel@home.robason.homelinux.net>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-03/msg00089.html

Bug-Description:

A typo caused bash to not honor a precision specification in a printf
format.

This patch, in file bash41-007, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-007.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 May 2010 02:21:02 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-006
Chet Ramey [Tue, 23 Mar 2010 01:15:30 +0000 (21:15 -0400)]
Patch-ID: bash41-006

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <201003210155.56618.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-03/msg00063.html

Bug-Description:

Bash did not correctly print/reproduce here documents attached to commands
inside compound commands such as for and while.  This affected the
execution of such commands inside a shell function when the function
definition is saved and later restored using `.' or `eval'.

This patch, in file bash41-006, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-006.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 May 2010 02:20:41 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-005
Chet Ramey [Wed, 17 Mar 2010 21:35:39 +0000 (17:35 -0400)]
Patch-ID: bash41-005

Bug-Reported-by: werner@suse.de
Bug-Reference-ID: <201002251238.o1PCcYcg016893@boole.suse.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-02/msg00132.html

Bug-Description:

When the `read' builtin times out after the timeout specified with -t is
exceeded, it does not reset the flags that tell signal handlers to process
signals immediately instead of deferring their handling.  This can result
in unsafe functions being called from signal handlers, which can cause bash
to hang or dump core.

This patch, in file bash41-005, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-005.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 20 Mar 2010 05:40:47 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-004
Chet Ramey [Mon, 8 Feb 2010 22:36:18 +0000 (17:36 -0500)]
Patch-ID: bash41-004

Bug-Reported-by: Crestez Dan Leonard <cdleonard@gmail.com>
Bug-Reference-ID: <1265592839.30682.21.camel@deskbox>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-02/msg00034.html

Bug-Description:

When running in Posix mode and executing a shell function without local
variables, bash will not propagate a variable in a special builtin's temporary
environment to have global scope.

This patch, in file bash41-004, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-004.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 20 Mar 2010 05:40:40 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-003
Chet Ramey [Sun, 31 Jan 2010 02:53:49 +0000 (21:53 -0500)]
Patch-ID: bash41-003

Bug-Reported-by: coyote@wariat.org.pl
Bug-Reference-ID: <4b64a1f8.06e2660a.60af.4bfb@mx.google.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-01/msg00135.html

Bug-Description:

If command completion is attempted on a word with a quoted globbing
character (e.g., `*' or `?'), bash can reference a NULL pointer and
dump core.

This patch, in file bash41-003, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-003.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 20 Mar 2010 05:40:34 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-002
Chet Ramey [Wed, 6 Jan 2010 13:30:23 +0000 (08:30 -0500)]
Patch-ID: bash41-002

Bug-Reported-by: guillaume.outters@free.fr
Bug-Reference-ID: <20100105230441.70D171AA7F52@asterix.local>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-01/msg00017.html

Bug-Description:

Bash-4.1/Readline-6.1 introduced a hook function that allows applications
to rewrite or modify filenames read from the file system before comparing
them with a word to be completed.  The converted filename, if it matches,
needs to be inserted into the line buffer, replacing the original contents.

This fixes a completion bug on Mac OS X involving filenames containing
UTF-8 characters.

This patch, in file bash41-002, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-002.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 18 Jan 2010 10:41:44 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash41-001
Chet Ramey [Thu, 7 Jan 2010 13:50:06 +0000 (08:50 -0500)]
Patch-ID: bash41-001

Bug-Reported-by: Yann Rouillard <yann@pleiades.fr.eu.org>
Bug-Reference-ID: <4B44A410.4070107@pleiades.fr.eu.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2010-01/msg00018.html

Bug-Description:

A prototype for vsnprintf was incorrect, and caused compilation failures
on systems that did not have a suitable vsnprintf, but had a declaration in
one of the system header files.

This patch, in file bash41-001, was downloaded from ftp.gnu.org on 2011-05-29,
and bash41-001.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 18 Jan 2010 10:41:37 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoGNU Bash 4.1 as released on ftp.gnu.org.
Chet Ramey [Sat, 2 Jan 2010 17:41:26 +0000 (12:41 -0500)]
GNU Bash 4.1 as released on ftp.gnu.org.

The contents of this commit were downloaded from
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.1.tar.gz on 2011-05-29, and the
signature available at ftp://ftp.gnu.org/pub/gnu/bash/bash-4.1.tar.gz.sig
was verified as follows:
gpg: Signature made Thu Dec 31 21:43:17 2009 EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

Below is Chet's announcement of Bash 4.1, as posted to <bug-bash@gnu.org>.

From chet@caleb.INS.CWRU.Edu Sat Jan  2 12:45:17 2010
Date: Sat, 2 Jan 2010 12:41:26 -0500
From: Chet Ramey <chet.ramey@case.edu>
Sender: Chet Ramey <chet@caleb.INS.CWRU.Edu>
To: bug-bash@gnu.org
Message-ID: <100102174126.AA98036.SM@caleb.INS.CWRU.Edu>
Cc: comp-unix-shell@moderators.isc.org, gnu-announce@gnu.org, chet.ramey@case.edu
Subject: Bash-4.1 available for FTP

Introduction
============

The first public release of bash-4.1 is now available with the URLs

ftp://ftp.cwru.edu/pub/bash/bash-4.1.tar.gz
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.1.tar.gz

and from the usual GNU mirror sites.

Unlike previous bash distributions, this tar file includes the formatted
documentation (postscript, dvi, html, and nroffed versions of the manual
pages).

Diffs from bash-4.0 are not available.

Please use `bashbug' to report bugs with this version.  It is built
and installed at the same time as bash.

Installation
============

Please read the README file first.

Installation instructions are provided in the INSTALL file.

New Features
============

This is the first revision to the fourth major release of bash.

This release fixes several outstanding bugs in bash-4.0 and introduces a
number of new features -- a larger number than usual for a minor version
release.

The most notable new features are a dynamic programmable completion
definition framework, a "default" programmable completion option, a
way to pass shell options to subshells, a mechansim to have redirections
allocate and assign a file descriptor to a shell variable, and a way
to direct xtrace output to an arbitrary file descriptor.

Read the file NEWS in the bash-4.1 distribution for a complete
description of the new features.  A copy of the relevant portions
is included below.

Changes have been made to the Readline library being released at
the same time as bash-4.1, readline-6.1, so that Bash can be
linked against an already-installed Readline library rather than
the private version in lib/readline.  Only readline-6.0 and later
versions are able to provide all of the symbols that bash-4.1
requires; earlier versions of the Readline library will not work
correctly.

A complete list of changes between bash-4.0 and bash-4.1 is
available in the file CHANGES; the complete list is too large to
include in this message.

Readline
========

Also available is a new release of the standalone Readline library,
version 6.1, with its own configuration scripts and Makefiles.
It can be retrieved with the URLs

ftp://ftp.cwru.edu/pub/bash/readline-6.1.tar.gz
ftp://ftp.gnu.org/pub/gnu/readline/readline-6.1.tar.gz

and from the usual GNU mirror sites.

Diffs from readline-6.0 are not available.

The formatted Readline documentation is included in the readline
distribution tar file.

A separate announcement listing the changes in Readline is being
distributed.

As always, thanks for your help.

Chet

+========== NEWS ==========+
This is a terse description of the new features added to bash-4.1 since
the release of bash-4.0.  As always, the manual page (doc/bash.1) is
the place to look for complete descriptions.

1.  New Features in Bash

a.  Here-documents within $(...) command substitutions may once more be
    delimited by the closing right paren, instead of requiring a newline.

b.  Bash's file status checks (executable, readable, etc.) now take file
    system ACLs into account on file systems that support them.

c.  Bash now passes environment variables with names that are not valid
    shell variable names through into the environment passed to child
    processes.

d.  The `execute-unix-command' readline function now attempts to clear and
    reuse the current line rather than move to a new one after the command
    executes.

e.  `printf -v' can now assign values to array indices.

f.  New `complete -E' and `compopt -E' options that work on the "empty"
    completion: completion attempted on an empty command line.

g.  New complete/compgen/compopt -D option to define a `default' completion:
    a completion to be invoked on command for which no completion has been
    defined.  If this function returns 124, programmable completion is
    attempted again, allowing a user to dynamically build a set of completions
    as completion is attempted by having the default completion function
    install individual completion functions each time it is invoked.

h.  When displaying associative arrays, subscripts are now quoted.

i.  Changes to dabbrev-expand to make it more `emacs-like': no space appended
    after matches, completions are not sorted, and most recent history entries
    are presented first.

j.  The [[ and (( commands are now subject to the setting of `set -e' and the
    ERR trap.

k.  The source/. builtin now removes NUL bytes from the file before attempting
    to parse commands.

l.  There is a new configuration option (in config-top.h) that forces bash to
    forward all history entries to syslog.

m.  A new variable $BASHOPTS to export shell options settable using `shopt' to
    child processes.

n.  There is a new confgure option that forces the extglob option to be
    enabled by default.

o.  New variable $BASH_XTRACEFD; when set to an integer bash will write xtrace
    output to that file descriptor.

p.  If the optional left-hand-side of a redirection is of the form {var}, the
    shell assigns the file descriptor used to $var or uses $var as the file
    descriptor to move or close, depending on the redirection operator.

q.  The < and > operators to the [[ conditional command now do string
    comparison according to the current locale if the compatibility level
    is greater than 40.

r.  Programmable completion now uses the completion for `b' instead of `a'
    when completion is attempted on a line like: a $(b c.

s.  Force extglob on temporarily when parsing the pattern argument to
    the == and != operators to the [[ command, for compatibility.

t.  Changed the behavior of interrupting the wait builtin when a SIGCHLD is
    received and a trap on SIGCHLD is set to be Posix-mode only.

u.  The read builtin has a new `-N nchars' option, which reads exactly NCHARS
    characters, ignoring delimiters like newline.

v.  The mapfile/readarray builtin no longer stores the commands it invokes via
    callbacks in the history list.

w.  There is a new `compat40' shopt option.

2.  New Features in Readline

a.  New bindable function: menu-complete-backward.

b.  In the vi insertion keymap, C-n is now bound to menu-complete by default,
    and C-p to menu-complete-backward.

c.  When in vi command mode, repeatedly hitting ESC now does nothing, even
    when ESC introduces a bound key sequence.  This is closer to how
    historical vi behaves.

d.  New bindable function: skip-csi-sequence.  Can be used as a default to
    consume key sequences generated by keys like Home and End without having
    to bind all keys.

e.  New application-settable function: rl_filename_rewrite_hook.  Can be used
    to rewite or modify filenames read from the file system before they are
    compared to the word to be completed.

f.  New bindable variable: skip-completed-text, active when completing in the
    middle of a word.  If enabled, it means that characters in the completion
    that match characters in the remainder of the word are "skipped" rather
    than inserted into the line.

g.  The pre-readline-6.0 version of menu completion is available as
    "old-menu-complete" for users who do not like the readline-6.0 version.

h.  New bindable variable: echo-control-characters.  If enabled, and the
    tty ECHOCTL bit is set, controls the echoing of characters corresponding
    to keyboard-generated signals.

i.  New bindable variable: enable-meta-key.  Controls whether or not readline
    sends the smm/rmm sequences if the terminal indicates it has a meta key
    that enables eight-bit characters.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/

8 years agoPatch-ID: bash40-037
Chet Ramey [Thu, 1 Oct 2009 20:38:24 +0000 (16:38 -0400)]
Patch-ID: bash40-037

Bug-Reported-by: Chet Ramey <chet.ramey@case.edu>
Bug-Reference-ID: <4AD7D749.5030601@case.edu>
Bug-Reference-URL:

Bug-Description:

The configure script does not work on Snow Leopard and will result in
attempts to link against the incorrect version of readline.

This patch, in file bash40-037, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-037.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 18 Jan 2010 09:28:56 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-036
Chet Ramey [Wed, 26 Aug 2009 21:15:59 +0000 (17:15 -0400)]
Patch-ID: bash40-036

Bug-Reported-by: Jerome Reybert <jreybert@gmail.com>
Bug-Reference-ID: <f5da50720908070109p1faa3847x5a9dff68d24a7197@mail.gmail.com>
Bug-Reference-URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=538013

Bug-Description:

Under some circumstances, menu-complete is unable to complete filenames.

This patch, in file bash40-036, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-036.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 18 Jan 2010 09:13:31 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

8 years agoPatch-ID: bash40-035
Chet Ramey [Sat, 26 Sep 2009 20:30:16 +0000 (16:30 -0400)]
Patch-ID: bash40-035

Bug-Reported-by: Freddy Vulto <fvulto@gmail.com>
Bug-Reference-ID: <e9c463930909171341p7cbe6e43pa3788ebbe3adec4d@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-09/msg00044.html

Bug-Description:

Bash-4.0 incorrectly treated single and double quotes as delimiters rather
than introducing quoted strings when splitting the line into words for
programmable completion functions.

This patch, in file bash40-035, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-035.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 24 Oct 2009 12:03:41 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-034
Chet Ramey [Fri, 18 Sep 2009 21:53:25 +0000 (17:53 -0400)]
Patch-ID: bash40-034

Bug-Reported-by: Anders Kaseorg <andersk@mit.edu>
Bug-Reference-ID: <1252856832.991059.8162.nullmailer@balanced-tree.mit.edu>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-09/msg00043.html

Bug-Description:

When using the globstar option, bash incorrectly interprets wildcarded path
components between a **/ and the last / as matching any path, even if the
constructed path does not match any files.

This patch, in file bash40-034, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-034.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 24 Oct 2009 12:03:33 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-033
Chet Ramey [Wed, 1 Jul 2009 19:32:42 +0000 (15:32 -0400)]
Patch-ID: bash40-033

Bug-Reported-by: Dr. Werner Fink <werner@suse.de>
Bug-Reference-ID: <200907010951.n619p76I013912@boole.suse.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-07/msg00000.html

Bug-Description:

Bash-4.0 has a memory leak in the `read' builtin when the number of fields
read is not the same as the number of variables passed as arguments.

This patch, in file bash40-033, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-033.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 30 Aug 2009 01:24:25 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-032
Chet Ramey [Thu, 27 Aug 2009 03:08:51 +0000 (23:08 -0400)]
Patch-ID: bash40-032

Bug-Reported-by: muszi@muszi.kite.hu
Bug-Reference-ID: <20090826113159.18815.qmail@muszi.kite.hu>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-08/msg00090.html

Bug-Description:

Bash-4.0 has a memory leak when processing ${!prefix@}.

This patch, in file bash40-032, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-032.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 30 Aug 2009 01:24:21 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-031
Chet Ramey [Mon, 24 Aug 2009 13:29:43 +0000 (09:29 -0400)]
Patch-ID: bash40-031

Bug-Reported-by: Roman Rakus <rrakus@redhat.com>
Bug-Reference-ID: <4A93F6E9.4050401@redhat.com>
Bug-Reference-URL:

Bug-Description:

An implicit assignment to index "0" of an existing array variable caused
the shell to crash when the variable was unset.

This patch, in file bash40-031, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-031.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 30 Aug 2009 01:24:14 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-030
Chet Ramey [Thu, 16 Jul 2009 18:13:41 +0000 (14:13 -0400)]
Patch-ID: bash40-030

Bug-Reported-by: Henning Bekel <h.bekel@googlemail.com>
Bug-Reference-ID: <7c6eacF262ctuU1@mid.individual.net>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-07/msg00054.html

Bug-Description:

A shell function invoked with `bind -x' is supposed to be able to move the
cursor by setting READLINE_POINT.  The effects of this assignment were
sometimes ignored.

This patch, in file bash40-030, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-030.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 30 Aug 2009 01:24:10 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-029
Chet Ramey [Mon, 29 Jun 2009 13:17:20 +0000 (09:17 -0400)]
Patch-ID: bash40-029

Bug-Reported-by: Christian Krause <chkr@plauener.de>
Bug-Reference-ID: Thu, 25 Jun 2009 21:47:59 +0200
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-06/msg00078.html

Bug-Description:

Previous versions of bash accepted strings in the initial environment
that were not valid shell variable assignments, usually because the
names were invalid, but still created shell variables from them and
passed them to child processes in the environment.

Bash-4.0 ignores those names and does not pass them to child processes.
Some users and automated processes depend on invalid variables being
ignored and passed to child processes.

This patch makes bash continue to ignore the invalid names, but pass
them to child processes in the export environment.

This patch, in file bash40-029, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-029.sig was furthermore verified, yielding the following output:
gpg: Signature made Sun 30 Aug 2009 01:24:06 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-028
Chet Ramey [Wed, 17 Jun 2009 22:12:18 +0000 (18:12 -0400)]
Patch-ID: bash40-028

Bug-Reported-by: martin f krafft <madduck@debian.org>
Bug-Reference-ID: <4A4E39E7.5080807@debian.org>
Bug-Reference-URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=519165
http://lists.gnu.org/archive/html/bug-bash/2009-07/msg00011.html

Bug-Description:

bash-4.0 reverted to the historical shell behavior of raising an error
when $@ or $* was expanded after `set -u' had been executed and there
were no positional parameters.  The Posix working group has since
clarified the standard's position on the issue, and $@ and $* are now the
only variables, parameters, or special parameters that do not raise an
error when unset if set -u is enabled.

This patch, in file bash40-028, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-028.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Jul 2009 08:39:27 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-027
Chet Ramey [Sat, 30 May 2009 03:32:20 +0000 (23:32 -0400)]
Patch-ID: bash40-027

Bug-Reported-by: jim@jim.sh
Bug-Reference-ID: <200905262140.n4QLeO4X030664@psychosis.jim.sh>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-05/msg00074.html

Bug-Description:

There are occasional cursor positioning errors when using readline's
horizontal scroll mode.

This patch, in file bash40-027, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-027.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Jul 2009 08:39:21 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-026
Chet Ramey [Tue, 2 Jun 2009 13:05:40 +0000 (09:05 -0400)]
Patch-ID: bash40-026

Bug-Reported-by: Sergei Steshenko <sergstesh@yahoo.com>
Bug-Reference-ID: <670181.38883.qm@web35204.mail.mud.yahoo.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-05/msg00059.html

Bug-Description:

A forgotten line in externs.h caused compilation errors to occur on some
systems (e.g., Cygwin).

This patch, in file bash40-026, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-026.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Jul 2009 08:39:14 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-025
Chet Ramey [Fri, 22 May 2009 16:35:55 +0000 (12:35 -0400)]
Patch-ID: bash40-025

Bug-Reported-by: Matt Zyzik <matt.zyzik@nyu.edu>
Bug-Reference-ID: <20090519011418.GA21431@ice.filescope.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-05/msg00044.html

Bug-Description:

bash40-024 introduced a regression for constructs like **/*.cs; that
expansion would no longer include matching files in the current directory.
This patch undoes portions of bash40-024 and fixes the original problem
in a different way.

This patch, in file bash40-025, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-025.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Jul 2009 08:39:02 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-024
Chet Ramey [Tue, 28 Apr 2009 14:22:29 +0000 (10:22 -0400)]
Patch-ID: bash40-024

Bug-Reported-by: Matt Zyzik <matt.zyzik@nyu.edu>
Bug-Reference-ID:  <20090405205428.4FDEA1C7175@ice.filescope.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00021.html

Bug-Description:

When using the ** globbing operator, bash will incorrectly add an extra
directory name when the preceding directory name ends with `*' or an empty
string when there is no preceding directory name.

This patch, in file bash40-024, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-024.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:49 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-023
Chet Ramey [Sun, 26 Apr 2009 01:42:18 +0000 (21:42 -0400)]
Patch-ID: bash40-023

Bug-Reported-by: Andreas Schwab <schwab@linux-m68k.org>
Bug-Reference-ID: <m21vrhhx08.fsf@igel.home>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00160.html

Bug-Description:

If the prompt length exactly matches the screen width, and the prompt ends
with invisible characters, readline positions the cursor incorrectly.

This patch, in file bash40-023, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-023.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:48 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-022
Chet Ramey [Thu, 16 Apr 2009 02:27:56 +0000 (22:27 -0400)]
Patch-ID: bash40-022

Bug-Reported-by: Bernd Eggink <monoped@sudrala.de>
Bug-Reference-ID: <49E65407.5010206@sudrala.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00118.html

Bug-Description:

When parsing case statements in command substitutions, the shell did not
note that a newline is a shell metacharacter and can legally be followed
by a reserved word (e.g., `esac').

This patch, in file bash40-022, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-022.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:46 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-021
Chet Ramey [Tue, 14 Apr 2009 18:00:18 +0000 (14:00 -0400)]
Patch-ID: bash40-021

Bug-Reported-by: Matt Zyzik <matt.zyzik@nyu.edu>
Bug-Reference-ID: <20090319015542.696F62B8E8@ice.filescope.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00149.html

Bug-Description:

When not in a locale supporting multibyte characters, readline will occasionally
not erase characters between the cursor position and the end of the line
when killing text backwards.

This patch, in file bash40-021, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-021.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:45 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-020
Chet Ramey [Mon, 13 Apr 2009 12:47:00 +0000 (08:47 -0400)]
Patch-ID: bash40-020

Bug-Reported-by: Nicolai Lissner <nlissne@linux01.org>
Bug-Reference-ID: <20090412020510.GA29658@lilith>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00104.html

Bug-Description:

If a SIGWINCH arrives while bash is performing redisplay, multi-line prompts
are displayed incorrectly due to the display code being called recursively.

This patch, in file bash40-020, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-020.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:44 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-019
Chet Ramey [Sat, 18 Apr 2009 01:08:20 +0000 (21:08 -0400)]
Patch-ID: bash40-019

Bug-Reported-by: Oleksiy Melnyk <lex@upc.ua>
Bug-Reference-ID: <20090224142233.D2FEFC004@floyd.upc.ua>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00200.html

Bug-Description:

Using an external command as part of the DEBUG trap when job control is
enabled causes pipelines to misbehave.  The problem has to do with process
groups assigned to the pipeline and terminal.

This patch, in file bash40-019, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-019.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:43 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-018
Chet Ramey [Mon, 6 Apr 2009 14:44:20 +0000 (10:44 -0400)]
Patch-ID: bash40-018

Bug-Reported-by: Dan Price <dp@eng.sun.com>
Bug-Reference-ID: <20090324171502.GA20582@eng.sun.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00184.html

Bug-Description:

A missing include file results in an empty function definition and a no-op
when checking whether or not the window size has changed.

This patch, in file bash40-018, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-018.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 16 May 2009 04:27:41 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-017
Chet Ramey [Sat, 21 Mar 2009 18:38:42 +0000 (14:38 -0400)]
Patch-ID: bash40-017

Bug-Reported-by: Lubomir Rintel <lkundrak@v3.sk>
Bug-Reference-ID: <1237654931.32737.13.camel@localhost.localdomain>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00174.html

Bug-Description:

Adding a null line to a here-document (e.g., by hitting EOF) causes the
shell to dump core attempting to dereference the NULL pointer.

This patch, in file bash40-017, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-017.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:40 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-016
Chet Ramey [Sat, 21 Mar 2009 01:37:00 +0000 (21:37 -0400)]
Patch-ID: bash40-016

Bug-Reported-by: Brian J. Murrell" <brian@interlinx.bc.ca>
Bug-Reference-ID: <1237564627.7666.12.camel@pc.interlinx.bc.ca>
Bug-Reference-URL:http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00160.html

Bug-Description:

There are several problems with the handling of $LINENO in an ERR trap.

This patch, in file bash40-016, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-016.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:38 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-015
Chet Ramey [Sun, 22 Mar 2009 18:47:56 +0000 (14:47 -0400)]
Patch-ID: bash40-015

Bug-Reported-by: Lubomir Rintel <lkundrak@v3.sk>
Bug-Reference-ID: <1237654931.32737.13.camel@localhost.localdomain>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00174.html

Bug-Description:

Deferring handling of signals which should cause the shell to terminate until
it is "safe" to run the handler functions does not work for some terminating
signals.

This patch, in file bash40-015, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-015.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:37 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-014
Chet Ramey [Sat, 21 Mar 2009 18:03:43 +0000 (14:03 -0400)]
Patch-ID: bash40-014

Bug-Reported-by: smallnow@gmail.com
Bug-Reference-ID: <49C460FE.40307@gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00166.html

Bug-Description:

When the fc builtin is run in a command substitution from a shell with history
enabled, it does not correctly calculate the command on which to operate.

This patch, in file bash40-014, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-014.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:36 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-013
Chet Ramey [Sat, 14 Mar 2009 23:04:10 +0000 (19:04 -0400)]
Patch-ID: bash40-013

Bug-Reported-by: jidanni@jidanni.org
Bug-Reference-ID:
Bug-Reference-URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=519165

Bug-Description:

Though references to $@ when there are no positional parameters will now
cause the shell to exit if the `errexit' option has been enabled, constructs
such as ${@:-foo} should not cause an exit.

This patch, in file bash40-013, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-013.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:34 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-012
Chet Ramey [Sat, 14 Mar 2009 17:23:00 +0000 (13:23 -0400)]
Patch-ID: bash40-012

Bug-Reported-by: "Clark J. Wang" <dearvoid@gmail.com>
Bug-Reference-ID: <a96f63770903132300v7816dfb7hb7f48d46048bf3cb@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00129.html

Bug-Description:

A case statement using the ;& pattern terminator followed immediately by
"esac" caused a core dump due to a null pointer dereference.

This patch, in file bash40-012, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-012.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:33 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-011
Chet Ramey [Fri, 13 Mar 2009 01:36:23 +0000 (21:36 -0400)]
Patch-ID: bash40-011

Bug-Reported-by: Matt Zyzik <Matt@ice.filescope.com>n
Bug-Reference-ID: <20090312015018.C00741383ED@ice.filescope.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00092.html

Bug-Description:

When using the new |& operator following a simple command with a redirection,
the redirection of stderr through the pipe was not performed under certain
circumstances.

This patch, in file bash40-011, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-011.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 23 Mar 2009 11:38:31 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-010
Chet Ramey [Sat, 7 Mar 2009 19:16:32 +0000 (14:16 -0500)]
Patch-ID: bash40-010

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <200903030122.56206.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00023.html

Bug-Description:

Bash has problems parsing comments in case statements when they appear in
$(...) subshells.

This patch, in file bash40-010, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-010.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:44 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-009
Chet Ramey [Mon, 2 Mar 2009 15:15:39 +0000 (10:15 -0500)]
Patch-ID: bash40-009

Bug-Reported-by: "Chris F.A. Johnson" <cfajohnson@gmail.com>
Bug-Reference-ID: <4d6b7$49a88cec$cef88ba3$16813@TEKSAVVY.COM>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00255.html

Bug-Description:

When the read builtin returned due to a timeout supplied with the -t option,
it did not restore any modified terminal attribtues.

This patch, in file bash40-009, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-009.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:44 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-008
Chet Ramey [Thu, 26 Feb 2009 22:22:15 +0000 (17:22 -0500)]
Patch-ID: bash40-008

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <200902261030.54062.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00230.html

Bug-Description:

This patch, in file bash40-008, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-008.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:44 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-007
Chet Ramey [Wed, 25 Feb 2009 22:25:56 +0000 (17:25 -0500)]
Patch-ID: bash40-007

Bug-Reported-by: AnMaster <anmaster@tele2.se>
Bug-Reference-ID: <49A41C18.80807@tele2.se>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00188.html

Bug-Description:

Bash had a number of problems parsing associative array subscripts containing
special characters.  The subscripts are supposed to be read as if they are
enclosed between double quotes.

This patch, in file bash40-007, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-007.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:43 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-006
Chet Ramey [Wed, 25 Feb 2009 22:25:56 +0000 (17:25 -0500)]
Patch-ID: bash40-006

Bug-Reported-by: Evgeniy Zhemchugov <jini.zh@gmail.com>
Bug-Reference-ID: <e7bc8dd30902241016m8bd543ej775717d007df975b@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00202.html

Bug-Description:

Bash did not parse pipelines using the |& construct correctly if the
pipeline elements were not simple commands.

This patch, in file bash40-006, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-006.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:43 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-005
Chet Ramey [Thu, 26 Feb 2009 16:40:16 +0000 (11:40 -0500)]
Patch-ID: bash40-005

Bug-Reported-by: Pierre Gaston <pierre.gaston@gmail.com>
Bug-Reference-ID: <c440c9800902242338n69f594a4nd66b8748def9cf18@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00206.html

Bug-Description:

The `declare' builtin dumped core when attempting to assign associative
array indices containing some special characters, even when they were
quoted before being expanded.

This patch, in file bash40-005, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-005.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:42 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-004
Chet Ramey [Tue, 24 Feb 2009 03:56:58 +0000 (22:56 -0500)]
Patch-ID: bash40-004

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <200902231720.30519.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00176.html

Bug-Description:

In some cases, enabling the `checkjobs' shell option will cause the shell
to core dump when executing the `exit' builtin.

This patch, in file bash40-004, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-004.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:42 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-003
Chet Ramey [Wed, 25 Feb 2009 20:58:25 +0000 (15:58 -0500)]
Patch-ID: bash40-003

Bug-Reported-by: Bernd Eggink <monoped@sudrala.de>
Bug-Reference-ID: <49A323F5.60503@sudrala.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00177.html

Bug-Description:

Under certain circumstances, constructs containing command substitutions
prevent PS1 from being re-evaluated and updated before being displayed.

This patch, in file bash40-003, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-003.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:42 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-002
Chet Ramey [Sun, 22 Feb 2009 22:08:25 +0000 (17:08 -0500)]
Patch-ID: bash40-002

Bug-Reported-by: phil@Arcturus.universe
Bug-Reference-ID: <20090221143709.13878.qmail@Arcturus.universe>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00142.html

Bug-Description:

A line inadvertenly omitted from a submitted patch results in core dumps
when attempting filename completion while using the bash-completion
package.

This patch, in file bash40-002, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-002.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:41 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash40-001
Chet Ramey [Sat, 7 Mar 2009 01:32:35 +0000 (20:32 -0500)]
Patch-ID: bash40-001

Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
Bug-Reference-ID: <200902211821.42188.vapier@gentoo.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00147.html

Bug-Description:

Bash has problems parsing certain constructs inside Posix-style $(...)
command substitutions, mostly with backslash-quoting and reserved word
recognition.    This is an issue because the contents are parsed at the
time the word containing the command substitution is read.

This patch, in file bash40-001, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-001.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 09 Mar 2009 10:32:40 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoGNU Bash 4.0 as released on ftp.gnu.org.
Chet Ramey [Mon, 23 Feb 2009 13:13:49 +0000 (08:13 -0500)]
GNU Bash 4.0 as released on ftp.gnu.org.

The contents of this commit were downloaded from
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.0.tar.gz on 2011-05-29, and the
signature available at ftp://ftp.gnu.org/pub/gnu/bash/bash-4.0.tar.gz.sig
was verified as follows:
gpg: Signature made Thu Feb 19 17:23:17 2009 EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

Below is Chet's announcement of Bash 4.0, as posted to <bug-bash@gnu.org>.

From chet@caleb.INS.CWRU.Edu Mon Feb 23 08:14:45 2009
Date: Mon, 23 Feb 2009 08:13:49 -0500
From: Chet Ramey <chet.ramey@case.edu>
To: bug-bash@gnu.org, gnu-announce@gnu.org, info-gnu@gnu.org
Message-ID: <090223131349.AA67622.SM@caleb.INS.CWRU.Edu>
Cc: chet.ramey@case.edu
Subject: Bash-4.0 available for FTP

Introduction
============

The first public release of bash-4.0 is now available with the URLs

ftp://ftp.cwru.edu/pub/bash/bash-4.0.tar.gz
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.0.tar.gz

and from the usual GNU mirror sites.

Unlike previous bash distributions, this tar file includes the formatted
documentation (postscript, dvi, html, and nroffed versions of the manual
pages).

Diffs from bash-3.2 are not available.

Please use `bashbug' to report bugs with this version.  It is built
and installed at the same time as bash.

Installation
============

Please read the README file first.

Installation instructions are provided in the INSTALL file.

New Features
============

This is the fourth major release of bash.

This release fixes the remaining serious bugs in the bash version 3 branch
and introduces significant new features.

The most notable new features are associative arrays, improvements to the
programmable completion functionality, case-modifying word expansions,
co-processes, support for the `**' special glob pattern, and additions to
the shell syntax and redirections.  The shell has been changed to be more
rigorous about parsing commands inside command substitutions, fixing one
piece of Posix non-compliance.

Read the file NEWS in the bash-4.0 distribution for a complete
description of the new features.  A copy is included below.

Changes have been made to the Readline library being released at
the same time as bash-4.0, readline-6.0 so that Bash can be
linked against an already-installed Readline library rather than
the private version in lib/readline.  Only readline-6.0 and later
versions are able to provide all of the symbols that bash-4.0
requires; earlier versions of the Readline library will not work
correctly.

A complete list of changes between bash-3.2 and bash-4.0 is
available in the file CHANGES; the complete list is too large to
include in this message.

Readline
========

Also available is a new release of the standalone Readline library,
version 6.0, with its own configuration scripts and Makefiles.
It can be retrieved with the URLs

ftp://ftp.cwru.edu/pub/bash/readline-6.0.tar.gz
ftp://ftp.gnu.org/pub/gnu/readline/readline-6.0.tar.gz

and from the usual GNU mirror sites.

Diffs from readline-5.2 are not available.

The formatted Readline documentation is included in the readline
distribution tar file.

A separate announcement listing the changes in Readline is being
distributed.

As always, thanks for your help.

Chet

+========== NEWS ==========+
This is a terse description of the new features added to bash-4.0 since
the release of bash-3.2.  As always, the manual page (doc/bash.1) is
the place to look for complete descriptions.

1.  New Features in Bash

a.  When using substring expansion on the positional parameters, a starting
    index of 0 now causes $0 to be prefixed to the list.

b.  The `help' builtin now prints its columns with entries sorted vertically
    rather than horizontally.

c.  There is a new variable, $BASHPID, which always returns the process id of
    the current shell.

d.  There is a new `autocd' option that, when enabled, causes bash to attempt
    to `cd' to a directory name that is supplied as the first word of a
    simple command.

e.  There is a new `checkjobs' option that causes the shell to check for and
    report any running or stopped jobs at exit.

f.  The programmable completion code exports a new COMP_TYPE variable, set to
    a character describing the type of completion being attempted.

g.  The programmable completion code exports a new COMP_KEY variable, set to
    the character that caused the completion to be invoked (e.g., TAB).

h.  If creation of a child process fails due to insufficient resources, bash
    will try again several times before reporting failure.

i.  The programmable completion code now uses the same set of characters as
    readline when breaking the command line into a list of words.

j.  The block multiplier for the ulimit -c and -f options is now 512 when in
    Posix mode, as Posix specifies.

k.  Changed the behavior of the read builtin to save any partial input received
    in the specified variable when the read builtin times out.  This also
    results in variables specified as arguments to read to be set to the empty
    string when there is no input available.  When the read builtin times out,
    it returns an exit status greater than 128.

l.  The shell now has the notion of a `compatibility level', controlled by
    new variables settable by `shopt'.  Setting this variable currently
    restores the bash-3.1 behavior when processing quoted strings on the rhs
    of the `=~' operator to the `[[' command.

m.  The `ulimit' builtin now has new -b (socket buffer size) and -T (number
    of threads) options.

n.  The -p option to `declare' now displays all variable values and attributes
    (or function values and attributes if used with -f).

o.  There is a new `compopt' builtin that allows completion functions to modify
    completion options for existing completions or the completion currently
    being executed.

p.  The `read' builtin has a new -i option which inserts text into the reply
    buffer when using readline.

q.  A new `-E' option to the complete builtin allows control of the default
    behavior for completion on an empty line.

r.  There is now limited support for completing command name words containing
    globbing characters.

s.  Changed format of internal help documentation for all builtins to roughly
    follow man page format.

t.  The `help' builtin now has a new -d option, to display a short description,
    and a -m option, to print help information in a man page-like format.

u.  There is a new `mapfile' builtin to populate an array with lines from a
    given file.  The name `readarray' is a synonym.

v.  If a command is not found, the shell attempts to execute a shell function
    named `command_not_found_handle', supplying the command words as the
    function arguments.

w.  There is a new shell option: `globstar'.  When enabled, the globbing code
    treats `**' specially -- it matches all directories (and files within
    them, when appropriate) recursively.

x.  There is a new shell option: `dirspell'.  When enabled, the filename
    completion code performs spelling correction on directory names during
    completion.

y.  The `-t' option to the `read' builtin now supports fractional timeout
    values.

z.  Brace expansion now allows zero-padding of expanded numeric values and
    will add the proper number of zeroes to make sure all values contain the
    same number of digits.

aa. There is a new bash-specific bindable readline function: `dabbrev-expand'.
    It uses menu completion on a set of words taken from the history list.

bb. The command assigned to a key sequence with `bind -x' now sets two new
    variables in the environment of the executed command:  READLINE_LINE_BUFFER
    and READLINE_POINT.  The command can change the current readline line
    and cursor position by modifying READLINE_LINE_BUFFER and READLINE_POINT,
    respectively.

cc. There is a new &>> redirection operator, which appends the standard output
    and standard error to the named file.

dd. The parser now understands `|&' as a synonym for `2>&1 |', which redirects
    the standard error for a command through a pipe.

ee. The new `;&' case statement action list terminator causes execution to
    continue with the action associated with the next pattern in the
    statement rather than terminating the command.

ff. The new `;;&' case statement action list terminator causes the shell to
    test the next set of patterns after completing execution of the current
    action, rather than terminating the command.

gg. The shell understands a new variable: PROMPT_DIRTRIM.  When set to an
    integer value greater than zero, prompt expansion of \w and \W  will
    retain only that number of trailing pathname components and replace
    the intervening characters with `...'.

hh. There are new case-modifying word expansions: uppercase (^[^]) and
    lowercase (,[,]).  They can work on either the first character or
    array element, or globally.  They accept an optional shell pattern
    that determines which characters to modify.  There is an optionally-
    configured feature to include capitalization operators.

ii. The shell provides associative array variables, with the appropriate
    support to create, delete, assign values to, and expand them.

jj. The `declare' builtin now has new -l (convert value to lowercase upon
    assignment) and -u (convert value to uppercase upon assignment) options.
    There is an optionally-configurable -c option to capitalize a value at
    assignment.

kk. There is a new `coproc' reserved word that specifies a coprocess: an
    asynchronous command run with two pipes connected to the creating shell.
    Coprocs can be named.  The input and output file descriptors and the
    PID of the coprocess are available to the calling shell in variables
    with coproc-specific names.

ll. A value of 0 for the -t option to `read' now returns success if there is
    input available to be read from the specified file descriptor.

mm. CDPATH and GLOBIGNORE are ignored when the shell is running in privileged
    mode.

nn. New bindable readline functions shell-forward-word and shell-backward-word,
    which move forward and backward words delimited by shell metacharacters
    and honor shell quoting.

oo.  New bindable readline functions shell-backward-kill-word and shell-kill-word
    which kill words backward and forward, but use the same word boundaries
    as shell-forward-word and shell-backward-word.

2.  New Features in Readline

a.  A new variable, rl_sort_completion_matches; allows applications to inhibit
    match list sorting (but beware: some things don't work right if
    applications do this).

b.  A new variable, rl_completion_invoking_key; allows applications to discover
    the key that invoked rl_complete or rl_menu_complete.

c.  The functions rl_block_sigint and rl_release_sigint are now public and
    available to calling applications who want to protect critical sections
    (like redisplay).

d.  The functions rl_save_state and rl_restore_state are now public and
    available to calling applications; documented rest of readline's state
    flag values.

e.  A new user-settable variable, `history-size', allows setting the maximum
    number of entries in the history list.

f.  There is a new implementation of menu completion, with several improvements
    over the old; the most notable improvement is a better `completions
    browsing' mode.

g.  The menu completion code now uses the rl_menu_completion_entry_function
    variable, allowing applications to provide their own menu completion
    generators.

h.  There is support for replacing a prefix  of a pathname with a `...' when
    displaying possible completions.  This is controllable by setting the
    `completion-prefix-display-length' variable.  Matches with a common prefix
    longer than this value have the common prefix replaced with `...'.

i.  There is a new `revert-all-at-newline' variable.  If enabled, readline will
    undo all outstanding changes to all history lines when `accept-line' is
    executed.

j.  If the kernel supports it, readline displays special characters
    corresponding to a keyboard-generated signal when the signal is received.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer

Chet Ramey, ITS, CWRU    chet@case.edu    http://tiswww.tis.case.edu/~chet/

9 years agoGNU Bash 4.0-rc1 as released on ftp.gnu.org. 4_0_rc1
Chet Ramey [Mon, 12 Jan 2009 21:40:11 +0000 (16:40 -0500)]
GNU Bash 4.0-rc1 as released on ftp.gnu.org.

The contents of this commit were downloaded from
ftp://ftp.gnu.org/pub/gnu/bash/bash-4.0-rc1.tar.gz on 2011-05-29, and the
signature available at ftp://ftp.gnu.org/pub/gnu/bash/bash-4.0-rc1.tar.gz.sig
was verified as follows:
gpg: Signature made Mon Jan 12 11:45:04 2009 EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

Below is Chet's announcement of Bash 4.0-rc1, as posted to <bug-bash@gnu.org>.

From chet@caleb.INS.CWRU.Edu Mon Jan 12 16:41:46 2009
Date: Mon, 12 Jan 2009 16:40:11 -0500
From: Chet Ramey <chet.ramey@case.edu>
Sender: Chet Ramey <chet@caleb.INS.CWRU.Edu>
To: bug-bash@gnu.org
Message-ID: <090112214011.AA04732.SM@caleb.INS.CWRU.Edu>
Cc: chet.ramey@case.edu
Subject: Bash-4.0-rc1 available for FTP

The first public release candidate of bash-4.0 is now available with the URL

ftp://ftp.cwru.edu/pub/bash/bash-4.0-rc1.tar.gz

This tar file does not include the formatted documentation (you
should be able to generate it yourself).

This release fixes the remaining serious bugs in the bash version 3 branch
and introduces significant new features.

The most notable new features are associative arrays, improvements to the
programmable completion functionality, case-modifying word expansions,
co-processes, support for the `**' special glob pattern, and additions to
the shell syntax and redirections.  The shell has been changed to be more
rigorous about parsing commands inside command substitutions, fixing one
piece of Posix non-compliance.

`bashbug' may be used to report bugs with this version.

As always, thanks for your help.

Chet

+========== CHANGES ==========+
This document details the changes between this version, bash-4.0-rc1,
and the previous version, bash-4.0-beta2.

1.  Changes to Bash

a.  Fixed a bug that caused parsing errors when a $()-style command
    substitution was follwed immediately by a quoted newline.

b.  Fixed a bug that caused extended shell globbing patterns beginning with
    `*(' to not work when used with pattern substitution word expansions.

------------------------------------------------------------------------------
This document details the changes between this version, bash-4.0-beta2,
and the previous version, bash-4.0-beta.

1.  Changes to Bash

a.  Fixed a bug that caused failed word expansions to set $? but not
    PIPESTATUS.

b.  Changed filename completion to quote the tilde in a filename with a
    leading tilde that exists in the current directory.

c.  Fixed a bug that caused a file descriptor leak when performing
    redirections attached to a compound command.

d.  Fixed a bug that caused expansions of $@ and $* to not exit the shell if
    the -u option was enabled and there were no posititional parameters.

e.  Fixed a bug that resulted in bash not terminating immediately if a
    terminating signal was received while performing output.

f.  Fixed a bug that caused the shell to crash after creating 256 process
    substitutions during word completion.

2.  Changes to Readline

a.  Fixed a bug that caused redisplay errors when using prompts with invisible
    characters and numeric arguments to a command in a multibyte locale.

b.  Fixed a bug that caused redisplay errors when using prompts with invisible
    characters spanning more than two physical screen lines.

------------------------------------------------------------------------------
This document details the changes between this version, bash-4.0-beta,
and the previous version, bash-4.0-alpha.

1.  Changes to Bash

a.  Fixed a typo that caused a variable to be used before initialization
    while parsing Posix-style command substitutions.

b.  Fixed a bug that caused stray ^? when the expansion of a parameter used
    as part of a pattern removal expansion is empty, but part of a non-
    empty string.

c.  Fixed a bug that could cause strings not converted to numbers by strtol
    to be treated as if the conversion had been successful.

d.  The `return' builtin now accepts no options and requires a `--' before
    a negative return value, as Posix requires.

e.  Fixed a bug that caused local variables to be created with the empty
    string for a value rather than no value.

f.  Changed behavior so the shell now acts as if it received an interrupt
    when a pipeline is killed by SIGINT while executing a list.

g.  Fixed a bug that caused `declare var' and `typeset var' to initialize
    `var' to the empty string.

h.  Changed `bind' builtin to print a warning but proceed if invoked when
    line editing is not active.

i.  Fixed a bug that caused the shell to exit when the `errexit' option is
    set and a command in a pipeline returns a non-zero exit status.

j.  Fixed a bug that caused the shell to not run the exit trap in a command
    run with `bash -c' under some circumstances.

k.  Fixed a bug that caused parser errors to occasionally not set $? when
    running commands with `eval'.

l.  Fixed a bug that caused stray control characters when evaluating compound
    array assignments containing $'\x7f' escapes.

m.  Fixed a bug that caused redirections involving file descriptor 10 as the
    target to behave incorrectly.

n.  Fixed a bug that could cause memory to be freed multiple times when
    assigning to COMP_WORDBREAKS.

o.  Fixed a bug that could cause NULL pointer dereferences when COMP_WORDBREAKS
    was unset.

2.  Changes to Readline

3.  New Features in Bash

a.  A value of 0 for the -t option to `read' now returns success if there is
    input available to be read from the specified file descriptor.

b.  CDPATH and GLOBIGNORE are ignored when the shell is running in privileged
    mode.

c.  New bindable readline functions shell-forward-word and shell-backward-word,
    which move forward and backward words delimited by shell metacharacters
    and honor shell quoting.

d.  New bindable readline functions shell-backward-kill-word and shell-kill-word
    which kill words backward and forward, but use the same word boundaries
    as shell-forward-word and shell-backward-word.

4.  New Features in Readline

a.  If the kernel supports it, readline displays special characters
    corresponding to a keyboard-generated signal when the signal is received.

------------------------------------------------------------------------------
This document details the changes between this version, bash-4.0-alpha,
and the previous version, bash-3.2-release.

1.  Changes to Bash

a.  Fixed several bugs in old-style `` command substitution parsing, including
    comment parsing and quoted string handling.

b.  Fixed problems parsing arguments to the [[ command's =~ regular expression
    matching operator:  metacharacter and whitespace parsing.

c.  Fixed a bug that caused the shell to inappropriately reuse high-numbered
    file descriptors it used internally.

d.  Fixed a bug in pattern replacement word expansions that caused a `/' as
    the first character of an expanded pattern to be mistaken for a global
    replacement specifier.

e.  Fixed several problems with the asprintf and snprintf replacement functions
    that caused hangs and crashes.

f.  Fixed a bug in the calculation of the current and previous job that caused
    it to refer to incorrect jobs.

g.  Fixed a bug in the check for the validity of a hashed command pathname that
    caused unnecessary hash table deletions and additions.

h.  Fixed a bug that caused child processes to inherit the wrong value for $!.

i.  Fixed a bug that caused `.' to fail to read and execute commands from non-
    regular files such as devices or named pipes.

j.  Fixed a bug in printf formatting for the %x and %X expansions that occurred
    on some systems.

k.  Fixed a bug that caused the shell to crash when creating temporary files if
    $TMPDIR named a non-writable directory.

l.  Fixed a bug that caused the shell to ignore $TMPDIR when creating temporary
    files under some circumstances.

m.  Fixed a bug that caused named pipes created by process substitution to not
    be cleaned up.

n.  Fixed a bug that caused HISTTIMEFORMAT to not be honored when it appeared
    in the initial shell environment.

o.  Fixed several bugs in the expansion of $* and $@ (quoted and unquoted)
    when IFS is null or contains non-whitespace characters; the same changes
    apply to arrays subscripted with * or @.

p.  Fixed several problems with pattern substitution expansions on the
    positional parameters and arrays subscripted with * or @ that occurred
    when $IFS was set to the empty string.

q.  Made a change to the default locale initialization code that should
    result in better behavior from the locale-aware library functions.

r.  Fixed a bug that caused compacting the jobs list to drop jobs.

s.  Fixed a bug that caused jumps back to the top-level processing loop from
    a builtin command to leave the shell in an inconsistent state.

t.  Fixed a bug that caused characters that would be escaped internally to be
    doubled when escaped with a backslash.

u.  Fixed the initialization of mailboxes to not cause maildirs to be read
    (and stat(2) called for every message file) at shell startup.

v.  Fixed a bug that caused the shell to not display $PS2 when the read builtin
    reads a line continued with a backslash.

w.  Fixed a bug that caused errors in word splitting when $IFS contained
    characters used for internal quoting.

x.  Fixed bugs that caused problems with output from shell builtins not being
    completely displayed on some systems.

y.  Fixed a bug that caused output to be lost when a redirection is acting on
    the shell's output file descriptor.

z.  Fixed bugs caused by shell builtins not checking for all write errors.

aa. Fixed a problem that caused the shell to dump core if expansions on the
    pattern passed to the pattern removal word expansions resulted in expansion
    errors.

bb. Fixed a bug that caused bash to loop infinitely after creating and
    waiting for 4096 jobs.

cc. Fixed a bug that caused bash to lose the status of a background job under
    certain circumstances.

dd. Fixed a bug that caused bash to not look in the temporary environment
    when performing variable lookup under certain circumstances.

ee. Fixed a bug that caused bash to close file descriptors greater than 10
    when they were used in redirections.

ff. Fixed a problem that caused the shell to attempt to read from the standard
    input when called as `bash -i script'.

gg. Fixed a memory leak and variable initialization problems when the -v option
    was supplied to `printf' that could cause incorrect results.

hh. Fixed a bug that caused the `read' builtin to count bytes when the -n option
    was supplied, rather than (possibly multibyte) characters.

ii. Fixed a bug when displaying a function due to not converting the function
    to an external form.

jj. Changed job control initialization to ensure that the shell has a tty
    as its controlling terminal before enabling job control.

kk. Fixed a bug with the `test' builtin that caused it to misinterpret
    arguments beginning with `-' but containing more than one character.

ll. Fixed bug that could cause the shell to dump core in certain cases where
    a command sets the SIGINT disposition to the default.

mm. Fixed a bug in the pattern replacement (affecting both word expansion
    and the `fc' builtin) that occurred when the pattern and replacement
    strings were empty.

nn. Fixed a bug that caused an arithmetic evaluation error to disable all
    further evaluation.

oo. Fixed a bug in pathname expansion that caused it to interpret backslashes
    in the pathname as quoting characters.

pp. Fixed a bug in the replacement getcwd() implementation that could cause
    memory to be overwritten.

qq. When in Posix mode, the `ulimit' builtin now uses a block size of 512 for
    the `-c' and `-f' options.

rr. Brace expansion now allows process substitutions to pass through unchanged.

ss. Fixed a problem in the command name completion code to avoid quoting
    escaped special characters twice when the command name begins with a tilde.

tt. Fixed a problem in the printf builtin that resulted in single-byte
    output for the "'" escape, even when using multibyte characters.

uu. Fixed a bug that caused the failure exit status to be lost when redirections
    attached to a compound command failed.

vv. Fixed a bug that caused the internal random number generator to not be
    re-seeded correctly when creating a subshell.

ww. Fixed a bug that could cause the bash replacement getcwd to overwrite
    memory.

xx. Fixed a bug that caused the shell to not receive SIGINT if it was sent
    while the shell was waiting for a command substitution to terminate, and
    make sure the exit status is correct when it does.

yy. Fixed a bug that resulted in the second and subsequent children spawned
    by a shell begun to run a command substitution being placed into the
    wrong process group.

zz. Fixed a bug that caused the results of successful tilde expansion to be
    subject to pathname expansion and word splitting.

aaa. Fixed a bug that could cause the shell to hang if it encountered an
     error that caused it to jump back to the top processing loop during a
     command substitution or `eval' command.

bbb. Fixed a bug that caused the `read' builtin to use the tty's attributes
     instead of those of the file descriptor passed with the -u option when
     processing the -n and -d options.

ccc. Fixed a bug that caused incorrect expansion of ${array[@]:foo} if the
     first character of $IFS was not whitespace.

ddd. Fixed a bug that occurred when scanning for the ending delimiter of a
     ${parameter/pat/sub} expansion.

eee. Fixed a bug that caused the shell to inappropriately expand command
     substitutions in words when expanding directory names for completion.

fff. Fixed a bug that caused the `fc' builtin to look too far back in the
     history list under certain circumstances.

ggg. Fixed a bug that caused a shell running in Posix mode to search $PWD for
     a file specified as an argument to source/. when the file was not found
     in $PATH.

hhh. Fixed a bug that caused the shell to modify the case of a command word
     found via command completion when the shell was performing case-
     insensitive completion.

iii. Fixed a bug that caused the shell to search $PATH for an argument to
     source/. even when it contained a `/'.

jjj. Fixed a bug that caused brace expansion to misorder expansions when the
     locale did not have a collating order like aAbBcC...zZ.

kkk. Fixed a bug that did not allow `set +o history' to have any effect when
     run in a startup file or from a sourced file.

lll. Fixed a bug with the precedence of the ?: conditional arithmetic operator.

mmm. Fixed a bug that caused side effects of temporary variable assignments
     to persist in the shell environment.

nnn. Fixed a bug that caused the terminal to be left in non-canonical mode
     when using editing commands that invoke the an editor on the current
     command line.

ooo. Fixed a bug that caused globbing characters and characters in $IFS to not
     be quoted appropriately when displaying assignment statements.

ppp. Fixed a bug that caused the `-e' option to be inherited when sourcing a
     file or evaluating a command with `eval' even if the return value of the
     command was supposed to be ignored.

qqq. Fixed a bug that caused the shell to attempt to created variables with
     invalid names if such names appeared in the initial environment.

rrr. Fixed a bug with quote removal in strings where the final character is a
     backslash.

sss. Fixed a bug that caused the effects of special variables to persist even
     when the variables were unset as part of the shell reinitializing itself
     to execute a shell script.

ttt. Fixed a bug that caused the history to not be saved after `history -c' or
     `history -d' was executed until a sufficient number of commands had been
     saved to the history.

uuu. Bash now parses command substitutions according to Posix rules: parsing
     the command contained in $() to find the closing delimiter.

vvv. Fixed a bug that caused traps on SIGCHLD set in a SIGCHLD handler to
     not persist.

www. Fixed a bug that didn't allow SIGCHLD to interrupt the `wait' builtin
     as Posix specifies.

xxx. Invalid numeric arguments to shell builtins no longer cause the shell to
     short-circuit any executing compound command.

yyy. Fixed a bug that caused the exit status to be lost when `break' was
     used to short-circuit a loop's execution.

zzz. Fixed a bug that caused stray ^? characters to be left in expansions of
     "${array[*]}".

aaaa. Bash now prints better error messages for here documents terminated by
      EOF and for identifying the incorrect token in an invalid arithmetic
      expression.

bbbb. Fixed a bug in the variable length word expansion that caused it to
      incorrectly calculate the number of multibyte characters.

cccc. Fixed a race condition that could result in the top-level shell setting
      the terminal's process group to an incorrect value if the process
      group was changed by a child of a child of the shell.

dddd. Fixed a bug that caused here documents belonging to commands within a
      compound command to be displayed in a syntactially-incorrect form, which
      prevented them from being re-read as input.

eeee. The shell displays more warnings about failures to set the locale.

ffff. Fixed a bug that caused the body of a here-document to not be saved to
      the history list.

gggg. Fixed a bug that caused configure to incorrectly conclude that FreeBSD
      had /dev/fd available, resulting in problems with process substitution.

2.  Changes to Readline

a.  Fixed a number of redisplay errors in environments supporting multibyte
    characters.

b.  Fixed bugs in vi command mode that caused motion commands to inappropriately
    set the mark.

c.  When using the arrow keys in vi insertion mode, readline allows movement
    beyond the current end of the line (unlike command mode).

d.  Fixed bugs that caused readline to loop when the terminal has been taken
    away and reads return -1/EIO.

e.  Fixed bugs in redisplay occurring when displaying prompts containing
    invisible characters.

f.  Fixed a bug that caused the completion append character to not be reset to
    the default after an application-specified completion function changed it.

g.  Fixed a problem that caused incorrect positioning of the cursor while in
    emacs editing mode when moving forward at the end of a line while using
    a locale supporting multibyte characters.

h.  Fixed an off-by-one error that caused readline to drop every 511th
    character of buffered input.

i.  Fixed a bug that resulted in SIGTERM not being caught or cleaned up.

j.  Fixed redisplay bugs caused by multiline prompts with invisible characters
    or no characters following the final newline.

k.  Fixed redisplay bug caused by prompts consisting solely of invisible
    characters.

l.  Fixed a bug in the code that buffers characters received very quickly in
    succession which caused characters to be dropped.

m.  Fixed a bug that caused readline to reference uninitialized data structures
    if it received a SIGWINCH before completing initialzation.

n.  Fixed a bug that caused the vi-mode `last command' to be set incorrectly
    and therefore unrepeatable.

o.  Fixed a bug that caused readline to disable echoing when it was being used
    with an output file descriptor that was not a terminal.

p.  Readline now blocks SIGINT while manipulating internal data structures
    during redisplay.

q.  Fixed a bug in redisplay that caused readline to segfault when pasting a
    very long line (over 130,000 characters).

r.  Fixed bugs in redisplay when using prompts with no visible printing
    characters.

3.  New Features in Bash

a.  When using substring expansion on the positional parameters, a starting
    index of 0 now causes $0 to be prefixed to the list.

b.  The `help' builtin now prints its columns with entries sorted vertically
    rather than horizontally.

c.  There is a new variable, $BASHPID, which always returns the process id of
    the current shell.

d.  There is a new `autocd' option that, when enabled, causes bash to attempt
    to `cd' to a directory name that is supplied as the first word of a
    simple command.

e.  There is a new `checkjobs' option that causes the shell to check for and
    report any running or stopped jobs at exit.

f.  The programmable completion code exports a new COMP_TYPE variable, set to
    a character describing the type of completion being attempted.

g.  The programmable completion code exports a new COMP_KEY variable, set to
    the character that caused the completion to be invoked (e.g., TAB).

h.  If creation of a child process fails due to insufficient resources, bash
    will try again several times before reporting failure.

i.  The programmable completion code now uses the same set of characters as
    readline when breaking the command line into a list of words.

j.  The block multiplier for the ulimit -c and -f options is now 512 when in
    Posix mode, as Posix specifies.

k.  Changed the behavior of the read builtin to save any partial input received
    in the specified variable when the read builtin times out.  This also
    results in variables specified as arguments to read to be set to the empty
    string when there is no input available.  When the read builtin times out,
    it returns an exit status greater than 128.

l.  The shell now has the notion of a `compatibility level', controlled by
    new variables settable by `shopt'.  Setting this variable currently
    restores the bash-3.1 behavior when processing quoted strings on the rhs
    of the `=~' operator to the `[[' command.

m.  The `ulimit' builtin now has new -b (socket buffer size) and -T (number
    of threads) options.

n.  The -p option to `declare' now displays all variable values and attributes
    (or function values and attributes if used with -f).

o.  There is a new `compopt' builtin that allows completion functions to modify
    completion options for existing completions or the completion currently
    being executed.

p.  The `read' builtin has a new -i option which inserts text into the reply
    buffer when using readline.

q.  A new `-E' option to the complete builtin allows control of the default
    behavior for completion on an empty line.

r.  There is now limited support for completing command name words containing
    globbing characters.

s.  Changed format of internal help documentation for all builtins to roughly
    follow man page format.

t.  The `help' builtin now has a new -d option, to display a short description,
    and a -m option, to print help information in a man page-like format.

u.  There is a new `mapfile' builtin to populate an array with lines from a
    given file.

v.  If a command is not found, the shell attempts to execute a shell function
    named `command_not_found_handle', supplying the command words as the
    function arguments.

w.  There is a new shell option: `globstar'.  When enabled, the globbing code
    treats `**' specially -- it matches all directories (and files within
    them, when appropriate) recursively.

x.  There is a new shell option: `dirspell'.  When enabled, the filename
    completion code performs spelling correction on directory names during
    completion.

y.  The `-t' option to the `read' builtin now supports fractional timeout
    values.

z.  Brace expansion now allows zero-padding of expanded numeric values and
    will add the proper number of zeroes to make sure all values contain the
    same number of digits.

aa. There is a new bash-specific bindable readline function: `dabbrev-expand'.
    It uses menu completion on a set of words taken from the history list.

bb. The command assigned to a key sequence with `bind -x' now sets two new
    variables in the environment of the executed command:  READLINE_LINE_BUFFER
    and READLINE_POINT.  The command can change the current readline line
    and cursor position by modifying READLINE_LINE_BUFFER and READLINE_POINT,
    respectively.

cc. There is a new >>& redirection operator, which appends the standard output
    and standard error to the named file.

dd. The parser now understands `|&' as a synonym for `2>&1 |', which redirects
    the standard error for a command through a pipe.

ee. The new `;&' case statement action list terminator causes execution to
    continue with the action associated with the next pattern in the
    statement rather than terminating the command.

ff. The new `;;&' case statement action list terminator causes the shell to
    test the next set of patterns after completing execution of the current
    action, rather than terminating the command.

gg. The shell understands a new variable: PROMPT_DIRTRIM.  When set to an
    integer value greater than zero, prompt expansion of \w and \W  will
    retain only that number of trailing pathname components and replace
    the intervening characters with `...'.

hh. There are new case-modifying word expansions: uppercase (^[^]) and
    lowercase (,[,]).  They can work on either the first character or
    array element, or globally.  They accept an optional shell pattern
    that determines which characters to modify.  There is an optionally-
    configured feature to include capitalization operators.

ii. The shell provides associative array variables, with the appropriate
    support to create, delete, assign values to, and expand them.

jj. The `declare' builtin now has new -l (convert value to lowercase upon
    assignment) and -u (convert value to uppercase upon assignment) options.
    There is an optionally-configurable -c option to capitalize a value at
    assignment.

kk. There is a new `coproc' reserved word that specifies a coprocess: an
    asynchronous command run with two pipes connected to the creating shell.
    Coprocs can be named.  The input and output file descriptors and the
    PID of the coprocess are available to the calling shell in variables
    with coproc-specific names.

4.  New Features in Readline

a.  A new variable, rl_sort_completion_matches; allows applications to inhibit
    match list sorting (but beware: some things don't work right if
    applications do this).

b.  A new variable, rl_completion_invoking_key; allows applications to discover
    the key that invoked rl_complete or rl_menu_complete.

c.  The functions rl_block_sigint and rl_release_sigint are now public and
    available to calling applications who want to protect critical sections
    (like redisplay).

d.  The functions rl_save_state and rl_restore_state are now public and
    available to calling applications; documented rest of readline's state
    flag values.

e.  A new user-settable variable, `history-size', allows setting the maximum
    number of entries in the history list.

f.  There is a new implementation of menu completion, with several improvements
    over the old; the most notable improvement is a better `completions
    browsing' mode.

g.  The menu completion code now uses the rl_menu_completion_entry_function
    variable, allowing applications to provide their own menu completion
    generators.

h.  There is support for replacing a prefix  of a pathname with a `...' when
    displaying possible completions.  This is controllable by setting the
    `completion-prefix-display-length' variable.  Matches with a common prefix
    longer than this value have the common prefix replaced with `...'.

i.  There is a new `revert-all-at-newline' variable.  If enabled, readline will
    undo all outstanding changes to all history lines when `accept-line' is
    executed.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer

Chet Ramey, ITS, CWRU    chet@case.edu    http://tiswww.tis.case.edu/~chet/

9 years agoGNU Bash 3.2.48 as released on ftp.gnu.org. 3_2_48
Chet Ramey [Tue, 17 Mar 2009 04:00:00 +0000 (00:00 -0400)]
GNU Bash 3.2.48 as released on ftp.gnu.org.

The contents of this commit were downloaded from
ftp://ftp.gnu.org/pub/gnu/bash/bash-3.2.48.tar.gz on 2011-05-29, and the
signature available at ftp://ftp.gnu.org/pub/gnu/bash/bash-3.2.48.tar.gz.sig
was verified as follows:
gpg: Signature made Tue Mar 17 11:21:07 2009 EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash32-048
Chet Ramey [Thu, 13 Nov 2008 23:38:45 +0000 (18:38 -0500)]
Patch-ID: bash32-048

Bug-Reported-by: Steffen Kiess <s-kiess@web.de>
Bug-Reference-ID: <1223929957.5383.6.camel@fips>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-10/msg00047.html

Bug-Description:

When invoked as `bash -c', bash did not execute an EXIT trap when the last
command in the executed list was a command run from the file system.

This patch, in file bash32-048, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-048.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:10 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash32-047
Chet Ramey [Thu, 13 Nov 2008 22:44:25 +0000 (17:44 -0500)]
Patch-ID: bash32-047

Bug-Reported-by: Roman Rakus <rrakus@redhat.com>
Bug-Reference-ID: <48A89EBC.906@redhat.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-08/msg00026.html

Bug-Description:

When using the `.' (source) builtin, under certain circumstances bash was
too careful in discarding state to preserve internal consistency.  One
effect was that assignments to readonly variables would cause entire scripts
to be aborted instead of execution of the offending command.  This behavior
was introduced by bash-3.2 patch 20.

This patch, in file bash32-047, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-047.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:08 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash32-046
Chet Ramey [Tue, 11 Nov 2008 03:02:38 +0000 (22:02 -0500)]
Patch-ID: bash32-046

Bug-Reported-by: Wang Xin <wxinee@gmail.com>
Bug-Reference-ID: <9a73e1570807062042ide16698m10e1b18036c95592@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-07/msg00014.html

Bug-Description:

Bash did not compute the length of multibyte characters correctly when
performing array element length references (e.g., ${#var[subscript]}).

This patch, in file bash32-046, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-046.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:07 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash32-045
Chet Ramey [Sat, 18 Oct 2008 18:35:03 +0000 (14:35 -0400)]
Patch-ID: bash32-045

Bug-Reported-by: Roman Rakus <rrakus@redhat.com>
Bug-Reference-ID: <4864B4A0.1060402@redhat.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-06/msg00098.html

Bug-Description:

When short-circuiting execution due to the `break' or `continue' builtins,
bash did not preserve the value of $?.

This patch, in file bash32-045, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-045.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:06 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash32-044
Chet Ramey [Thu, 23 Oct 2008 13:39:46 +0000 (09:39 -0400)]
Patch-ID: bash32-044

Bug-Reported-by: slinkp <stuff@slinkp.com>
Bug-Reference-ID: <da52a26a-9f38-4861-a918-14d3482b539d@c65g2000hsa.googlegroups.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-05/msg00085.html

Bug-Description:

The presence of invisible characters in a prompt longer than the screenwidth
with invisible characters on the first and last prompt lines caused readline
to place the cursor in the wrong physical location.

This patch, in file bash32-044, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-044.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:04 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

9 years agoPatch-ID: bash32-043
Chet Ramey [Sun, 9 Nov 2008 22:47:31 +0000 (17:47 -0500)]
Patch-ID: bash32-043

Bug-Reported-by: Morita Sho <morita-pub-en-debian@inz.sakura.ne.jp>
Bug-Reference-ID:
Bug-Reference-URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478096

Bug-Description:

Side effects caused by setting function-local versions of variables bash
handles specially persisted after the function returned.

This patch, in file bash32-043, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-043.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:03 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-042
Chet Ramey [Sun, 17 Aug 2008 17:09:59 +0000 (13:09 -0400)]
Patch-ID: bash32-042

Bug-Reported-by: Archimerged Ark Submedes <archimerged@gmail.com>
Bug-Reference-ID: <5ba4bef00804182116g65ff71e0qdffcf672f205e708@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-04/msg00041.html

Bug-Description:

An operator precedence error prevented the bash arithmetic evaluator from
parsing conditional commands correctly.

This patch, in file bash32-042, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-042.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:12:01 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-041
Chet Ramey [Sun, 17 Aug 2008 17:07:40 +0000 (13:07 -0400)]
Patch-ID: bash32-041

Bug-Reported-by: Dan Jacobson <jidanni@jidanni.org>
Bug-Reference-ID: <873arjs11h.fsf@jidanni.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-02/msg00049.html

Bug-Description:

Bash saved and restored the value of `set -o history' while sourcing files,
preventing users from turning off history with `set +o history' in .bashrc.

This patch, in file bash32-041, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-041.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:11:59 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-040
Chet Ramey [Sun, 17 Aug 2008 17:07:04 +0000 (13:07 -0400)]
Patch-ID: bash32-040

Bug-Reported-by: John McCabe-Dansted
Bug-Reference-ID:
Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/202885

Bug-Description:

When using the `set' builtin to list all shell variables, the shell uses
the wrong variable when computing the length of a variable's value.

This patch, in file bash32-040, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-040.sig was furthermore verified, yielding the following output:
gpg: Signature made Tue 18 Nov 2008 08:11:42 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-039
Chet Ramey [Sat, 23 Feb 2008 02:20:40 +0000 (21:20 -0500)]
Patch-ID: bash32-039

Bug-Reported-by: rew@erebor.com
Bug-Reference-ID: <20070119065603.546D011E9C@kansas.erebor.com>
Bug-Reference-URL:

Bug-Description:

Bash-3.2 changed the behavior of the [[ command's `=~' operator when the
right-hand side was quoted:  it matched the quoted portions as strings.
This patch introduces a new shell option: compat31.  When enabled, it
restores the bash-3.1 behavior with respect to evaluating quoted arguments
to the =~ operator.

This patch, in file bash32-039, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-039.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 28 Apr 2008 10:07:24 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-038
Chet Ramey [Fri, 7 Mar 2008 17:55:47 +0000 (12:55 -0500)]
Patch-ID: bash32-038

Bug-Reported-by: Wojciech Puchar <wojtek@wojtek.tensor.gdynia.pl>
Bug-Reference-ID: <200803131141.m2DBf9vo001136@wojtek.tensor.gdynia.pl>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-03/msg00029.html

Bug-Description:

When reading input lines into a single variable using the `read' builtin,
bash did not free the memory it read after assigining it to the named
variable, causing a memory leak noticable when reading large amounts of
data.

This patch, in file bash32-038, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-038.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 28 Apr 2008 10:07:20 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-037
Chet Ramey [Fri, 18 Jan 2008 03:48:15 +0000 (22:48 -0500)]
Patch-ID: bash32-037

Bug-Reported-by: jared r r spiegel <jrrs@iorek.ice-nine.org>
Bug-Reference-ID: <200801152201.m0FM1lDp021260@iorek.ice-nine.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-01/msg00049.html

Bug-Description:

Bash inappropriately evaluates command substitutions while expanding
directory names as part of command substitution.

This patch, in file bash32-037, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-037.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 28 Apr 2008 10:07:17 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-036
Chet Ramey [Thu, 20 Dec 2007 13:52:34 +0000 (08:52 -0500)]
Patch-ID: bash32-036

Bug-Reported-by: Len Lattanzi <llattanzi@apple.com>
Bug-Reference-ID: <87493131-7AEC-4301-A684-E6CC6D06E3E1@apple.com>
Bug-Reference-URL:

Bug-Description:

When initializing a subshell, bash did not reset a sentinel keeping track
of the number of command substitutions, leading to an infinite loop if
an error was encountered in the subshell.

This patch, in file bash32-036, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-036.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 28 Apr 2008 10:07:13 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-035
Chet Ramey [Fri, 18 Jan 2008 03:48:15 +0000 (22:48 -0500)]
Patch-ID: bash32-035

Bug-Reported-by: Ingo Molnar <mingo@elte.hu>
Bug-Reference-ID: <20071205202901.GA25202@elte.hu>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-12/msg00014.html

Bug-Description:

Bash incorrectly puts the second and subsequent children spawned by a
shell forked to run a command substitution in the wrong process group.

This patch, in file bash32-035, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-035.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 28 Apr 2008 10:07:10 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-034
Chet Ramey [Tue, 1 Jan 2008 00:26:36 +0000 (19:26 -0500)]
Patch-ID: bash32-034

Bug-Reported-by: Ian Campbell <ian.campbell@xensource.com>
Bug-Reference-ID: <EXCHPAFExU3l5bhn1ow00001dfe@rpc.xensource.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-10/msg00060.html

Bug-Description:

The bash getcwd replacement will write past the end of allocated memory
when it allocates the buffer itself if it uses the buffer size passed as
an argument, and that size is less than the length of the pathname.

This patch, in file bash32-034, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-034.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 28 Apr 2008 10:07:06 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-033
Chet Ramey [Thu, 31 May 2007 15:55:46 +0000 (11:55 -0400)]
Patch-ID: bash32-033

Bug-Reported-by: Christophe Martin <schplurtz@free.fr>
Bug-Reference-ID: <465ABA4A.3030805@free.fr>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-05/msg00104.html

Bug-Description:

References made within a function to an uninitialized local array variable
using the [*] subscript in a double-quoted string  can result in spurious
ASCII 127 characters in the expanded value.

This patch, in file bash32-033, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-033.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:57:46 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-032
Chet Ramey [Sat, 13 Oct 2007 02:55:25 +0000 (22:55 -0400)]
Patch-ID: bash32-032

Bug-Reported-by: Uwe Doering <gemini@geminix.org>
Bug-Reference-ID: <46F3DD72.2090801@geminix.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-09/msg00102.html

Bug-Description:

There is an off-by-one error in the code that buffers characters received
very quickly in succession, causing characters to be dropped.

This patch, in file bash32-032, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-032.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:57:41 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-031
Chet Ramey [Sat, 10 Nov 2007 22:51:29 +0000 (17:51 -0500)]
Patch-ID: bash32-031

Bug-Reported-by: Miroslav Lichvar <mlichvar@redhat.com>
Bug-Reference-ID: Fri, 02 Nov 2007 14:07:45 +0100
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-11/msg00000.html

Bug-Description:

In certain cases when outputting characters at the end of the line,
e.g., when displaying the prompt string, readline positions the cursor
incorrectly if the prompt string contains invisible characters and the
text being drawn begins before the last invisible character in the line.

This patch, in file bash32-031, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-031.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:57:34 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-030
Chet Ramey [Tue, 6 Nov 2007 03:31:14 +0000 (22:31 -0500)]
Patch-ID: bash32-030

Bug-Reported-by: Paul Eggert <eggert@cs.ucla.edu> Andreas Schwab <schwab@suse.de>
Bug-Reference-ID: <877il0nu84.fsf_-_@penguin.cs.ucla.edu> <m28x5gparz.fsf@igel.home>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-11/msg00023.html http://lists.gnu.org/archive/html/bug-bash/2007-11/msg00022.htmlhttp://lists.gnu.org/archive/html/bug-bash/2007-11/msg00022.html

Bug-Description:

If redirections attached to a compound command fail, bash does not set the
command's exit status correctly.  This only happens when the command is the
first in a sequential list.

This patch, in file bash32-030, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-030.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:57:17 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-029
Chet Ramey [Thu, 18 Oct 2007 12:08:44 +0000 (08:08 -0400)]
Patch-ID: bash32-029

Bug-Reported-by: Tomas Janousek <tjanouse@redhat.com>
Bug-Reference-ID: <20071102104034.GA26893@redhat.com>
Bug-Reference-URL: https://bugzilla.redhat.com/show_bug.cgi?id=286861

Bug-Description:

When the bash arithmetic expression evaluator has temporarily turned off
evalation, such as when parsing a pre- or post-decrement or -increment
operator, and an error occurs, evaluation is not re-enabled.

This patch, in file bash32-029, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-029.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:57:05 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-028
Chet Ramey [Sat, 10 Nov 2007 22:51:29 +0000 (17:51 -0500)]
Patch-ID: bash32-028

Bug-Reported-by: dAniel hAhler <ubuntu@thequod.de>
Bug-Reference-ID:
Bug-Reference-URL:

Bug-Description:

Under some circumstances, readline will incorrectly display a prompt string
containing invisible characters after the final newline.

This patch, in file bash32-028, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-028.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:56:53 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-027
Chet Ramey [Thu, 11 Oct 2007 02:43:58 +0000 (22:43 -0400)]
Patch-ID: bash32-027

Bug-Reported-by: dAniel hAhler <ubuntu@thequod.de>
Bug-Reference-ID: <4702ED8A.5000503@thequod.de>
Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/119938

Bug-Description:

When updating the display after displaying, for instance, a list of possible
completions, readline will place the cursor at the wrong position if the
prompt contains invisible characters and a newline.

This patch, in file bash32-027, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-027.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:56:46 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

10 years agoPatch-ID: bash32-026
Chet Ramey [Fri, 23 Nov 2007 20:37:41 +0000 (15:37 -0500)]
Patch-ID: bash32-026

Bug-Reported-by: Chet Ramey <chet.ramey@case.edu>
Bug-Reference-ID:
Bug-Reference-URL:

Bug-Description:

This keeps the Apple linker from attempting to link bash against Apple's
readline library "replacement" rather than the one shipped with bash.  It
extends the configure workaround to Mac OS X Leopard (10.5).

As a side effect, the patch updates the copyright date displayed in the
version string.

You must re-run configure after applying the patch, and before rebuilding
bash.

This patch, in file bash32-026, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-026.sig was furthermore verified, yielding the following output:
gpg: Signature made Fri 14 Dec 2007 08:56:39 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-025
Chet Ramey [Tue, 17 Jul 2007 13:24:21 +0000 (09:24 -0400)]
Patch-ID: bash32-025

Bug-Reported-by: Tom Bjorkholm <tom.bjorkholm@ericsson.com>
Bug-Reference-ID: <AEA1A32F001C6B4F98614B5B80D7647D01C075E9@esealmw115.eemea.ericsson.se>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-04/msg00004.html

Bug-Description:

An off-by-one error in readline's input buffering caused readline to drop
each 511th character of buffered input (e.g., when pasting a large amount
of data into a terminal window).

This patch, in file bash32-025, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-025.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:53:37 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-024
Chet Ramey [Fri, 13 Jul 2007 03:10:10 +0000 (23:10 -0400)]
Patch-ID: bash32-024

Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
Bug-Reference-ID: <1178376645.9063.25.camel@localhost>
Bug-Reference-URL: http://bugs.gentoo.org/177095

Bug-Description:

The readline display code miscalculated the screen position when performing
a redisplay in which the new text occupies more screen space that the old,
but takes fewer bytes to do so (e.g., when replacing a shorter string
containing multibyte characters with a longer one containing only ASCII).

This patch, in file bash32-024, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-024.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:53:30 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-023
Chet Ramey [Tue, 17 Jul 2007 13:45:11 +0000 (09:45 -0400)]
Patch-ID: bash32-023

Bug-Reported-by: Chet Ramey <chet.ramey@cwru.edu>
Bug-Reference-ID:
Bug-Reference-URL:

Bug-Description:

When an error occurs during the pattern removal word expansion, the shell
can free unallocated memory or free memory multiple times.

This patch, in file bash32-023, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-023.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:53:21 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-022
Chet Ramey [Thu, 24 May 2007 20:03:30 +0000 (16:03 -0400)]
Patch-ID: bash32-022

Bug-Reported-by: Chet Ramey <chet.ramey@cwru.edu>
Bug-Reference-ID:
Bug-Reference-URL:

Bug-Description:

POSIX specifies that the `read' builtin invoked from an interative shell
must prompt with $PS2 when a line is continued using a backslash while
reading from a terminal.

This patch, in file bash32-022, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-022.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:53:13 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-021
Chet Ramey [Sat, 24 Mar 2007 21:13:20 +0000 (17:13 -0400)]
Patch-ID: bash32-021

Bug-Reported-by: BAGSHAW Paul RD-TECH-REN <paul.bagshaw@orange-ftgroup.com>
Bug-Reference-ID: <941BA0BF46DB8F4983FF7C8AFE800BC205EA7D4B@ftrdmel3.rd.francetelecom.fr>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00065.html

Bug-Description:

When the parser read a backslash-escaped character that would be treated
internally as an escape, it would double the number of escape characters.

This patch, in file bash32-021, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-021.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:53:05 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-020
Chet Ramey [Sat, 10 Mar 2007 16:11:30 +0000 (11:11 -0500)]
Patch-ID: bash32-020

Bug-Reported-by: Ian A Watson <WATSON_IAN_A@LILLY.COM>
Bug-Reference-ID: <OFEC551808.69D02C7F-ON8525729A.0045708D-8525729A.0046150B@EliLilly.lilly.com>
Bug-Reference-URL:

Bug-Description:

In some cases of error processing, a jump back to the top-level processing
loop from a builtin command  would leave the shell in an inconsistent state.

This patch, in file bash32-020, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-020.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:52:52 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-019
Chet Ramey [Tue, 13 Mar 2007 12:50:16 +0000 (08:50 -0400)]
Patch-ID: bash32-019

Bug-Reported-by: Thomas Loeber <ifp@loeber1.de>
Bug-Reference-ID: <200703082223.08919.ifp@loeber1.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00036.html

Bug-Description:

When rl_read_key returns -1, indicating that bash's controlling terminal
has been invalidated for some reason (e.g., receiving a SIGHUP), the error
status was not reported correctly to the caller.  This could cause input
loops.

This patch, in file bash32-019, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-019.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:52:44 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-018
Chet Ramey [Fri, 18 May 2007 15:40:14 +0000 (11:40 -0400)]
Patch-ID: bash32-018

Bug-Reported-by: osicka@post.cz
Bug-Reference-ID: <228.177-19682-1132061412-1179356692@post.cz>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-05/msg00061.html

Bug-Description:

In certain cases, bash can lose the saved status of a background job, though
it should still be reported by `wait'.  Bash can also loop infinitely after
creating and waiting for 4096 jobs.

This patch, in file bash32-018, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-018.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 22 Aug 2007 08:52:34 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-017
Chet Ramey [Fri, 20 Apr 2007 19:17:01 +0000 (15:17 -0400)]
Patch-ID: bash32-017

Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
Bug-Reference-ID: <1173636022.7039.36.camel@localhost>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00039.html

Bug-Description:

When restoring the original prompt after finishing an incremental search,
bash sometimes places the cursor incorrectly if the primary prompt contains
invisible characters.

This patch, in file bash32-017, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-017.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 25 Apr 2007 11:22:51 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-016
Chet Ramey [Sat, 10 Mar 2007 22:25:44 +0000 (17:25 -0500)]
Patch-ID: bash32-016

Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
Bug-Reference-ID: <1171795523.8021.18.camel@localhost>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-02/msg00054.html

Bug-Description:

When moving the cursor, bash sometimes misplaces the cursor when the prompt
contains two or more multibyte characters.  The particular circumstance that
uncovered the problem was having the (multibyte) current directory name in
the prompt string.

This patch, in file bash32-016, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-016.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 25 Apr 2007 11:22:43 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-015
Chet Ramey [Thu, 1 Feb 2007 04:12:06 +0000 (23:12 -0500)]
Patch-ID: bash32-015

Bug-Reported-by:
Bug-Reference-ID:
Bug-Reference-URL:

Bug-Description:

Under certain circumstances, when using FIFOs for process substitution,
bash fails to unlink the FIFOs.  This leaves open file descriptors that
can cause the shell to hang and litters the file system.

This patch, in file bash32-015, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-015.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 19 Mar 2007 10:28:59 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-014
Chet Ramey [Tue, 16 Jan 2007 03:58:00 +0000 (22:58 -0500)]
Patch-ID: bash32-014

Bug-Reported-by: Brett Stahlman <brettstahlman@comcast.net>
Bug-Reference-ID: <000701c72d29$a227e0e0$5ec7cf47@computerroom>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-12/msg00065.html

Bug-Description:

Bash mishandles word splitting under certain circumstances when IFS is
null (IFS=).  Constructs affected include ${param/pat/sub} and others
when expanding arrays (array[@]).

This patch, in file bash32-014, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-014.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 19 Mar 2007 10:28:51 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-013
Chet Ramey [Sat, 3 Feb 2007 01:23:17 +0000 (20:23 -0500)]
Patch-ID: bash32-013

Bug-Reported-by: Magnus Svensson <msvensson@mysql.com>
Bug-Reference-ID: <45BDC44D.80609@mysql.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-01/msg00002.html

Bug-Description:

Readline neglects to reallocate the array it uses to keep track of wrapped
screen lines when increasing its size.  This will eventually result in
segmentation faults when given sufficiently long input.

This patch, in file bash32-013, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-013.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 19 Mar 2007 10:28:45 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-012
Chet Ramey [Tue, 6 Mar 2007 16:17:55 +0000 (11:17 -0500)]
Patch-ID: bash32-012

Bug-Reported-by: John Wyman <JohnWyman@celink.com>
Bug-Reference-ID: <5E7DEFC094C35044B87FAE761D9F0EE20143A3B7@exchange2k.celink.com>
Bug-Reference-URL:

Bug-Description:

Some systems (AIX 4.x) don't implement the PRI_xxx macros correctly,
causing syntax errors when attempting to compile bash on those systems.
This patch adds support for the PRI_MACROS_BROKEN define.

You will need to re-run `configure' after applying the patch.  Run
`touch configure' so make doesn't try to run autoconf.

This patch, in file bash32-012, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-012.sig was furthermore verified, yielding the following output:
gpg: Signature made Wed 21 Mar 2007 08:59:47 AM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"