bash:bash.git
8 years agoPatch-ID: bash40-038 maintenance/4.0
Chet Ramey [Wed, 17 Mar 2010 21:35:39 +0000 (17:35 -0400)]
Patch-ID: bash40-038

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 bash40-038, was downloaded from ftp.gnu.org on 2011-05-29,
and bash40-038.sig was furthermore verified, yielding the following output:
gpg: Signature made Sat 20 Mar 2010 05:38:27 PM EDT using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

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>"

8 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>"

8 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>"

8 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>"

8 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>"

8 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>"

8 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>"

8 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>"

9 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>"

9 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>"

9 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>"

10 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>"

10 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>"

10 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>"

11 years agoPatch-ID: bash32-011
Chet Ramey [Wed, 31 Jan 2007 14:48:00 +0000 (09:48 -0500)]
Patch-ID: bash32-011

Bug-Reported-by: Petr Sumbera <Petr.Sumbera@Sun.COM>
Bug-Reference-ID: <45AF5F4B.1020800@sun.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-01/msg00049.html

Bug-Description:

Under certain circumstances (loopback mounts), the bash getcwd does not
return correct results.  This patch allows the use of the Solaris libc
getcwd even though it doesn't dynamically allocate memory.

Run `touch configure' to make sure make doesn't try to run autoconf.
Then run configure with whatever options you like.

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

11 years agoPatch-ID: bash32-010
Chet Ramey [Thu, 1 Feb 2007 03:53:16 +0000 (22:53 -0500)]
Patch-ID: bash32-010

Bug-Reported-by: Ryan Waldron <rew@erebor.com>
Bug-Reference-ID: <20070119065603.546D011E9C@kansas.erebor.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-01/msg00059.html

Bug-Description:

The glibc implementation of regcomp/regexec does not allow backslashes to
escape "ordinary" pattern characters when matching.  Bash used backslashes
to quote all characters when the pattern argument to the [[ special
command's =~ operator was quoted.  This caused the match to fail on Linux
and other systems using GNU libc.

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

11 years agoPatch-ID: bash32-009
Chet Ramey [Wed, 6 Dec 2006 16:15:04 +0000 (11:15 -0500)]
Patch-ID: bash32-009

Bug-Reported-by: James.M.Botte@lowes.com
Bug-Reference-ID: <BA9FF90F7E5B424998F98EDA9F1F94BE01FA9853@msexchdb01.lowes.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-12/msg00000.html

Bug-Description:

When using its built-in replacement for snprintf/asprintf, bash does not
treat the %x, %X, and %o format specifiers as unsigned numbers.

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

11 years agoPatch-ID: bash32-008
Chet Ramey [Fri, 24 Nov 2006 15:48:37 +0000 (10:48 -0500)]
Patch-ID: bash32-008

Bug-Reported-by: Linda Walsh <bash@tlinx.org>
Bug-Reference-ID: <456041FD.8000605@tlinx.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00040.html

Bug-Description:

When checking pathnames from the command hash table (e.g., when the `checkhash'
shell option is enabled), a bug causes bash to delete and re-lookup each
command.

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

11 years agoPatch-ID: bash32-007
Chet Ramey [Fri, 24 Nov 2006 19:50:01 +0000 (14:50 -0500)]
Patch-ID: bash32-007

Bug-Reported-by: jidanni@jidanni.org
Bug-Reference-ID: <E1Gkg12-00017D-Fm@jidanni.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00039.html

Bug-Description:

When removing the current or previous job from the jobs list, bash incorrectly
resets the current job under some circumstances.

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

11 years agoPatch-ID: bash32-006
Chet Ramey [Mon, 13 Nov 2006 22:55:57 +0000 (17:55 -0500)]
Patch-ID: bash32-006

Bug-Reported-by: ebb9@byu.net
Bug-Reference-ID: <45540862.9030900@byu.net>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00017.html
http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00016.html

Bug-Description:

In some cases, code that is intended to be used in the presence of multibyte
characters is called when no such characters are present, leading to incorrect
display position calculations and incorrect redisplay.

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

11 years agoPatch-ID: bash32-005
Chet Ramey [Tue, 31 Oct 2006 13:19:44 +0000 (08:19 -0500)]
Patch-ID: bash32-005

Bug-Reported-by: Stuart Shelton <stuart@openobjects.com>
Bug-Reference-ID: <453F7CC8.6030907@openobjects.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00127.html

Bug-Description:

A missing extern declaration for `asprintf' caused `double' arguments to be
passed as `0', leading to incorrect results.  Additionally, a bug in the
replacement asprintf/snprintf function caused an infinite loop when passed
0 arguments to the floating point conversions under some circumstances.

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

11 years agoPatch-ID: bash32-004
Chet Ramey [Thu, 26 Oct 2006 13:17:50 +0000 (09:17 -0400)]
Patch-ID: bash32-004

Bug-Reported-by: Stuart Shelton <srcshelton@gmail.com>
Bug-Reference-ID: <619141e40610261203y6cda5aa6i23cb24c7aeba996e@mail.gmail.com>
Bug-Reference-URL:

Bug-Description:

A bug in the parameter pattern substitution implementation treated a pattern
whose first character was `/' (after expansion) as specifying global
replacement.

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

11 years agoPatch-ID: bash32-003
Chet Ramey [Sat, 14 Oct 2006 18:56:16 +0000 (14:56 -0400)]
Patch-ID: bash32-003

Bug-Reported-by: John Gatewood Ham <zappaman@buraphalinux.org>
Bug-Reference-ID: <Pine.LNX.4.64.0610121334140.15558@www.buraphalinux.org>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00045.html

Bug-Description:

When using the conditional command's `=~' operator to match regular
expressions, the parser did not skip over shell metacharacters in the
regular expression, leading to syntax errors.

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

11 years agoPatch-ID: bash32-002
Chet Ramey [Mon, 16 Oct 2006 19:13:23 +0000 (15:13 -0400)]
Patch-ID: bash32-002

Bug-Reported-by: Jim Gifford <jim@jg555.com>
Bug-Reference-ID: <12j2pc3aq35mb04@corp.supernews.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00082.html

Bug-Description:

An incorrect encoding specification in the Content-Type header causes msgfmt
to fail, which causes `make install' to fail.

This patch, in file bash32-002, was downloaded from ftp.gnu.org on 2011-05-29,
and bash32-002.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 30 Oct 2006 05:31:06 PM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

11 years agoPatch-ID: bash32-001
Chet Ramey [Thu, 12 Oct 2006 14:30:57 +0000 (10:30 -0400)]
Patch-ID: bash32-001

Bug-Reported-by: Greg Schafer <gschafer@zip.com.au>
Bug-Reference-ID: <20061012084940.GA15768@tigers.local>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00046.html

Bug-Description:

When using historical ``-style command substitution, bash incorrectly attempts
to interpret shell comments while scanning for the closing backquote.

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

11 years agoGNU Bash 3.2 as released on ftp.gnu.org. 3_2
Chet Ramey [Thu, 12 Oct 2006 13:29:33 +0000 (09:29 -0400)]
GNU Bash 3.2 as released on ftp.gnu.org.

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

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

From chet@caleb.ins.cwru.edu Thu Oct 12 09:30:54 2006
Date: Thu, 12 Oct 2006 09:29:33 -0400
From: Chet Ramey <chet.ramey@case.edu>
Sender: Chet Ramey <chet@caleb.ins.cwru.edu>
To: bug-bash@gnu.org, gnu-announce@gnu.org, cygwin@sources.redhat.com, linux-announce@news.ornl.gov
Message-ID: <061012132933.AA13023.SM@caleb.ins.cwru.edu>
Cc: jkh@apple.com, chet@case.edu
Subject: Bash-3.2 available for FTP

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

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

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

and from the usual GNU mirror sites.

This tar file does not include the formatted documentation
(postscript, dvi, html, and nroffed versions of the manual pages);
that may be retrieved with the URLs

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

When unpacking the documentation, make sure to extract the tar file
in the bash-3.2 source directory.

Diffs from bash-3.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 maintenance release for the third major release of bash.

This release fixes the relatively few remaining bugs in the bash3 line.
It will probably be the final release before bash version 4.

Read the file NEWS in the bash-3.2 distribution for a complete description
of the new features.

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

A complete list of changes between bash-3.1 and bash-3.2 is
available in the file CHANGES; the relevant portions are appended.

Readline
========

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

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

and from the usual GNU mirror sites.

Diffs from readline-5.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

+========== CHANGES ==========+
This document details the changes between this version, bash-3.2-release,
and the previous version, bash-3.2-beta.

1.  Changes to Bash

a.  Fixed a bug that caused the temporary environment passed to a command to
    affect the shell's environment under certain circumstances.

b.  Fixed a bug in the printf builtin that caused the %q format specifier to
    ignore empty string arguments.

c.  Improved multibyte character environment detection at configuration time.

d.  Fixed a bug in the read builtin that left spurious escape characters in the
    input after processing backslashes when assigning to an array variable.

2.  Changes to Readline

a.  Fixed a redisplay bug that occurred in multibyte-capable locales when the
    prompt was one character longer than the screen width.
------------------------------------------------------------------------------
This document details the changes between this version, bash-3.2-beta,
and the previous version, bash-3.2-alpha.

1.  Changes to Bash

a.  Changed the lexical analyzer to treat locale-specific blank characters as
    white space.

b.  Fixed a bug in command printing to avoid confusion between redirections and
    process substitution.

c.  Fixed problems with cross-compiling originating from inherited environment
    variables.

d.  Added write error reporting to printf builtin.

e.  Fixed a bug in the variable expansion code that could cause a core dump in
    a multi-byte locale.

f.  Fixed a bug that caused substring expansion of a null string to return
    incorrect results.

g.  BASH_COMMAND now retains its previous value while executing commands as the
    result of a trap, as the documentation states.

2.  Changes to Readline

a.  Fixed a bug with prompt redisplay in a multi-byte locale to avoid redrawing
    the prompt and input line multiple times.

b.  Fixed history expansion to not be confused by here-string redirection.

c.  Readline no longer treats read errors by converting them to newlines, as
    it does with EOF.  This caused partial lines to be returned from readline().

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

1.  Changes to Bash

a.  Fixed a source bug that caused the minimal configuration to not compile.

b.  Fixed memory leaks in error handling for the `read' builtin.

c.  Changed the [[ and (( compound commands to set PIPESTATUS with their exit
    status.

d.  Fixed some parsing problems with compound array assignments.

e.  Added additional configuration changes for: NetBSD (incomplete multibyte
    character support)

f.  Fixed two bugs with local array variable creation when shadowing a variable
    of the same name from a previous context.

g.  Fixed the `read' builtin to restore the correct set of completion functions
    if a timeout occurs.

h.  Added code to defer the initialization of HISTSIZE (and its stifling of the
    history list) until the history file is loaded, allowing a startup file to
    override the default value.

i.  Tightened up the arithmetic expression parsing to produce better error
    messages when presented with invalid operators.

j.  Fixed the cross-compilation support to build the signal list at shell
    invocation rather than compile time if cross-compiling.

k.  Fixed multibyte support for non-gcc compilers (or compilers that do not
    allow automatic array variable sizing based on a non-constant value).

l.  Several fixes to the code that manages the list of terminated jobs and
    their exit statuses, and the list of active and recently-terminated jobs
    to avoid pid aliasing/wraparound and allocation errors.

m.  Fixed a problem that allowed scripts to die due to SIGINT while waiting
    for children, even when started in the background or otherwise ignoring
    SIGINT.

n.  Fixed a bug that caused shells invoked as -/bin/bash from not being
    recognized as login shells.

o.  Fixed a problem that caused shells in the background to give the terminal
    to a process group other than the foreground shell process group.

p.  Fixed a problem with extracting the `varname' in ${#varname}.

q.  Fixed the code that handles SIGQUIT to not exit immediately -- thereby
    calling functions that may not be called in a signal handler context --
    but set a flag and exit afterward (like SIGINT).

r.  Changed the brace expansion code to skip over braces that don't begin a
    valid matched brace expansion construct.

s.  Fixed `typeset' and `declare' to not require that their shell function
    operands to be valid shell identifiers.

t.  Changed `test' to use access(2) with a temporary uid/euid swap when testing
    file attributes and running setuid, and access(2) in most other cases.

u.  Changed completion code to not attempt command name completion on a line
    consisting solely of whitespace when no_empty_command_completion is set.

v.  The `hash' builtin now prints nothing in posix mode when the hash table is
    empty, and prints a message to that effect to stdout instead of stderr
    when not in posix mode.

w.  Fixed a bug in the extended pattern matching code that caused it to fail to
    match periods with certain patterns.

x.  Fixed a bug that caused the shell to dump core when performing filename
    generation in directories with thousands of files.

y.  Returned to the original Bourne shell rules for parsing ``:  no recursive
    parsing of embedded quoted strings or ${...} constructs.

z.  The inheritence of the DEBUG, RETURN, and ERR traps is now dependent only
    on the settings of the `functrace' and `errtrace' shell options, rather
    than whether or not the shell is in debugging mode.

aa. Fixed a problem with $HOME being converted to ~ in the expansion of
    members of the DIRSTACK array.

bb. Fixed a problem with quoted arguments to arithmetic expansions in certain
    constructs.

cc. The command word completion code now no longer returns matching directories
    while searching $PATH.

dd. Fixed a bug with zero-padding and precision handling in snprintf()
    replacement.

ee. Fixed a bug that caused the command substitution code not to take embedded
    shell comments into account.

ff. Fixed a bug that caused $((...);(...)) to be misinterpreted as an
    arithmetic substitution.

gg. Fixed a bug in the prompt expansion code that inappropriately added a
    \001 before a \002 under certain circumstances.

hh. Fixed a bug that caused `unset LANG' to not properly reset the locale
    (previous versions would set the locale back to what it was when bash
    was started rather than the system's "native" locale).

ii. Fixed a bug that could cause file descriptors > 10 to not be closed even
    when closed explicitly by a script.

jj. Fixed a bug that caused single quotes to be stripped from ANSI-C quoting
    inside double-quoted command substitutions.

kk. Fixed a bug that could cause core dumps when `return' was executed as the
    last element of a pipeline inside a shell function.

ll. Fixed a bug that caused DEBUG trap strings to overwrite commands stored in
    the jobs list.

2.  Changes to Readline

a.  Fixed a problem that caused segmentation faults when using readline in
    callback mode and typing consecutive DEL characters on an empty line.

b.  Fixed several redisplay problems with multibyte characters, all having to
    do with the different code paths and variable meanings between single-byte
    and multibyte character redisplay.

c.  Fixed a problem with key sequence translation when presented with the
    sequence \M-\C-x.

d.  Fixed a problem that prevented the `a' command in vi mode from being
    undone and redone properly.

e.  Fixed a problem that prevented empty inserts in vi mode from being undone
    properly.

f.  Fixed a problem that caused readline to initialize with an incorrect idea
    of whether or not the terminal can autowrap.

g.  Fixed output of key bindings (like bash `bind -p') to honor the setting of
    convert-meta and use \e where appropriate.

h.  Changed the default filename completion function to call the filename
    dequoting function if the directory completion hook isn't set.  This means
    that any directory completion hooks need to dequote the directory name,
    since application-specific hooks need to know how the word was quoted,
    even if no other changes are made.

i.  Fixed a bug with creating the prompt for a non-interactive search string
    when there are non-printing characters in the primary prompt.

j.  Fixed a bug that caused prompts with invisible characters to be redrawn
    multiple times in a multibyte locale.

k.  Fixed a bug that could cause the key sequence scanning code to return the
    wrong function.

l.  Fixed a problem with the callback interface that caused it to fail when
    using multi-character keyboard macros.

m.  Fixed a bug that could cause a core dump when an edited history entry was
    re-executed under certain conditions.

n.  Fixed a bug that caused readline to reference freed memory when attmpting
    to display a portion of the prompt.

3.  New Features in Bash

a.  Changed the parameter pattern replacement functions to not anchor the
    pattern at the beginning of the string if doing global replacement - that
    combination doesn't make any sense.

b.  When running in `word expansion only' mode (--wordexp option), inhibit
    process substitution.

c.  Loadable builtins now work on MacOS X 10.[34].

d.  Shells running in posix mode no longer set $HOME, as POSIX requires.

e.  The code that checks for binary files being executed as shell scripts now
    checks only for NUL rather than any non-printing character.

f.  Quoting the string argument to the [[ command's  =~ operator now forces
    string matching, as with the other pattern-matching operators.

4.  New Features in Readline

a.  Calling applications can now set the keyboard timeout to 0, allowing
    poll-like behavior.

b.  The value of SYS_INPUTRC (configurable at compilation time) is now used as
    the default last-ditch startup file.

c.  The history file reading functions now allow windows-like \r\n line
    terminators.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
       Live Strong.  No day but today.
Chet Ramey, ITS, CWRU    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/

12 years agoPatch-ID: bash31-017
Chet Ramey [Wed, 12 Apr 2006 12:49:02 +0000 (08:49 -0400)]
Patch-ID: bash31-017

Bug-Reported-by: syphir@syphir.sytes.net
Bug-Reference-ID: <442421F5.3010105@syphir.sytes.net>
Bug-Reference-URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=358831

Bug-Description:

Array expansion fails with an arithmetic syntax error when the subscript
appears within double quotes.  For example: ${a["4"]}.

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

12 years agoPatch-ID: bash31-016
Chet Ramey [Fri, 3 Mar 2006 21:54:12 +0000 (16:54 -0500)]
Patch-ID: bash31-016

Bug-Reported-by: Nikita Danilov <nikita@clusterfs.com>
Bug-Reference-ID: <17397.51015.769854.541057@gargle.gargle.HOWL>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-02/msg00064.html

Bug-Description:

Bash will dump core when attempting to perform globbing in directories with
very large numbers of files.

This patch, in file bash31-016, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-016.sig was furthermore verified, yielding the following output:
gpg: Signature made Thu 30 Mar 2006 09:10:58 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-015
Chet Ramey [Mon, 27 Feb 2006 22:18:43 +0000 (17:18 -0500)]
Patch-ID: bash31-015

Bug-Reported-by: Benoit Vila
Bug-Reference-ID: <43FCA614.1090108@free.fr>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-02/msg00058.html

Bug-Description:

A problem with the extended globbing code prevented dots from matching
filenames when used in some extended matching patterns.

This patch, in file bash31-015, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-015.sig was furthermore verified, yielding the following output:
gpg: Signature made Thu 30 Mar 2006 09:10:48 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-014
Chet Ramey [Sat, 18 Feb 2006 17:14:58 +0000 (12:14 -0500)]
Patch-ID: bash31-014

Bug-Reported-by: Mike Stroyan <mike.stroyan@hp.com>
Bug-Reference-ID: <20060203191607.GC27614@localhost>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-02/msg00004.html

Bug-Description:

The displayed search prompt is corrupted when using non-incremental
searches in vi and emacs mode if the prompt contains non-printing
characters or spans multiple lines.  The prompt is expanded more than
once; the second time without the escape sequences that protect non-
printing characters from the length calculations.

This patch, in file bash31-014, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-014.sig was furthermore verified, yielding the following output:
gpg: Signature made Thu 16 Mar 2006 09:01:22 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-013
Chet Ramey [Sat, 18 Feb 2006 03:54:22 +0000 (22:54 -0500)]
Patch-ID: bash31-013

Bug-Reported-by: Bob Rossi <bob@brasko.net>
Bug-Reference-ID: <43F60606.80708@case.edu>
Bug-Reference-URL:

Bug-Description:

In some cases, readline will reference freed memory when attempting to
display a portion of the prompt.

This patch, in file bash31-013, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-013.sig was furthermore verified, yielding the following output:
gpg: Signature made Thu 16 Mar 2006 09:01:15 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-012
Chet Ramey [Wed, 25 Jan 2006 19:55:18 +0000 (14:55 -0500)]
Patch-ID: bash31-012

Bug-Reported-by: Alexander Kshevetskiy <alex@dgap.mipt.ru>
Bug-Reference-ID: <308374997.20060124175849@dgap.mipt.ru>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00097.html

Bug-Description:

There is a parsing problem involving parentheses in assignment statements
that causes words to be terminated prematurely.

This patch, in file bash31-012, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-012.sig was furthermore verified, yielding the following output:
gpg: Signature made Thu 16 Mar 2006 09:01:10 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-011
Chet Ramey [Wed, 25 Jan 2006 19:55:18 +0000 (14:55 -0500)]
Patch-ID: bash31-011

Bug-Reported-by: Mike Stroyan <mike.stroyan@hp.com>
Bug-Reference-ID: <E1EvwxP-0004LD-GC@localhost.localdomain>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00033.html

Bug-Description:

A change in bash-3.1 caused the single quotes to be stripped from ANSI-C
quoting inside double-quoted command substitutions.

This patch, in file bash31-011, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-011.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 27 Feb 2006 08:19:27 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-010
Chet Ramey [Thu, 23 Feb 2006 13:21:12 +0000 (08:21 -0500)]
Patch-ID: bash31-010

Bug-Reported-by: vw@vonwolff.de
Bug-Reference-ID: <20060123135234.1AC2F1D596@wst07.vonwolff.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00090.html

Bug-Description:

There is a difference in behavior between bash-3.0 and bash-3.1 involving
parsing of single- and double-quoted strings occurring in old-style
command substitution.  The difference has to do with how backslashes are
processed.  This patch restores a measure of backwards compatibility while
the question of POSIX conformance and ultimately correct behavior is discussed.

THIS IS AN UPDATED PATCH.  USE THIS COMMAND TO REVERSE THE EFFECTS OF
THE ORIGINAL PATCH.  THE CURRENT DIRECTORY MUST BE THE BASH-3.1 SOURCE
DIRECTORY.

patch -p0 -R < bash31-010.orig

Then apply this patch as usual.

This patch, in file bash31-010, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-010.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 27 Feb 2006 08:19:03 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-010
Chet Ramey [Wed, 25 Jan 2006 19:55:18 +0000 (14:55 -0500)]
Patch-ID: bash31-010

Bug-Reported-by: vw@vonwolff.de
Bug-Reference-ID: <20060123135234.1AC2F1D596@wst07.vonwolff.de>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00090.html

Bug-Description:

There is a difference in behavior between bash-3.0 and bash-3.1 involving
parsing of single- and double-quoted strings occurring in old-style
command substitution.  The difference has to do with how backslashes are
processed.  This patch restores a measure of backwards compatibility while
the question of POSIX conformance and ultimately correct behavior is discussed.

This patch, in file bash31-010.orig, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-010.orig.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 27 Feb 2006 08:18:03 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"

12 years agoPatch-ID: bash31-009
Chet Ramey [Wed, 1 Feb 2006 18:55:38 +0000 (13:55 -0500)]
Patch-ID: bash31-009

Bug-Reported-by: Joshua Neuheisel <jneuheisel@gmail.com>
Bug-Reference-ID: <25d873330601140820v4ad8efd2t8bf683b073c138b3@mail.gmail.com>
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00062.html

Bug-Description:

Under some circumstances, background (asynchronous) jobs can set the terminal
process group incorrectly.  This can cause a foreground process (including
the foreground shell) to get read errors and exit.

This patch, in file bash31-009, was downloaded from ftp.gnu.org on 2011-05-29,
and bash31-009.sig was furthermore verified, yielding the following output:
gpg: Signature made Mon 20 Feb 2006 08:22:57 AM EST using DSA key ID 64EA74AB
gpg: Good signature from "Chet Ramey <chet@cwru.edu>"