|
Tomas Janousek |
4fb0991 |
BASH PATCH REPORT
|
|
Tomas Janousek |
4fb0991 |
=================
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
Bash-Release: 3.2
|
|
Tomas Janousek |
4fb0991 |
Patch-ID: bash32-033
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
Bug-Reported-by: Christophe Martin <schplurtz@free.fr>
|
|
Tomas Janousek |
4fb0991 |
Bug-Reference-ID: <465ABA4A.3030805@free.fr>
|
|
Tomas Janousek |
4fb0991 |
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-05/msg00104.html
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
Bug-Description:
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
References made within a function to an uninitialized local array variable
|
|
Tomas Janousek |
4fb0991 |
using the [*] subscript in a double-quoted string can result in spurious
|
|
Tomas Janousek |
4fb0991 |
ASCII 127 characters in the expanded value.
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
Patch:
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
*** ../bash-3.2-patched/arrayfunc.c 2007-08-25 13:47:05.000000000 -0400
|
|
Tomas Janousek |
4fb0991 |
--- arrayfunc.c 2007-05-31 11:55:46.000000000 -0400
|
|
Tomas Janousek |
4fb0991 |
***************
|
|
Tomas Janousek |
4fb0991 |
*** 723,727 ****
|
|
Tomas Janousek |
4fb0991 |
{
|
|
Tomas Janousek |
4fb0991 |
if (rtype)
|
|
Tomas Janousek |
4fb0991 |
! *rtype = 1;
|
|
Tomas Janousek |
4fb0991 |
if (allow_all == 0)
|
|
Tomas Janousek |
4fb0991 |
{
|
|
Tomas Janousek |
4fb0991 |
--- 723,727 ----
|
|
Tomas Janousek |
4fb0991 |
{
|
|
Tomas Janousek |
4fb0991 |
if (rtype)
|
|
Tomas Janousek |
4fb0991 |
! *rtype = (t[0] == '*') ? 1 : 2;
|
|
Tomas Janousek |
4fb0991 |
if (allow_all == 0)
|
|
Tomas Janousek |
4fb0991 |
{
|
|
Tomas Janousek |
4fb0991 |
*** ../bash-3.2-patched/subst.c 2007-08-25 13:47:08.000000000 -0400
|
|
Tomas Janousek |
4fb0991 |
--- subst.c 2007-11-14 15:43:00.000000000 -0500
|
|
Tomas Janousek |
4fb0991 |
***************
|
|
Tomas Janousek |
4fb0991 |
*** 4908,4915 ****
|
|
Tomas Janousek |
4fb0991 |
intmax_t arg_index;
|
|
Tomas Janousek |
4fb0991 |
SHELL_VAR *var;
|
|
Tomas Janousek |
4fb0991 |
! int atype;
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
ret = 0;
|
|
Tomas Janousek |
4fb0991 |
temp = 0;
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
/* Handle multiple digit arguments, as in ${11}. */
|
|
Tomas Janousek |
4fb0991 |
--- 4973,4981 ----
|
|
Tomas Janousek |
4fb0991 |
intmax_t arg_index;
|
|
Tomas Janousek |
4fb0991 |
SHELL_VAR *var;
|
|
Tomas Janousek |
4fb0991 |
! int atype, rflags;
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
ret = 0;
|
|
Tomas Janousek |
4fb0991 |
temp = 0;
|
|
Tomas Janousek |
4fb0991 |
+ rflags = 0;
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
/* Handle multiple digit arguments, as in ${11}. */
|
|
Tomas Janousek |
4fb0991 |
***************
|
|
Tomas Janousek |
4fb0991 |
*** 4944,4947 ****
|
|
Tomas Janousek |
4fb0991 |
--- 5010,5015 ----
|
|
Tomas Janousek |
4fb0991 |
? quote_string (temp)
|
|
Tomas Janousek |
4fb0991 |
: quote_escapes (temp);
|
|
Tomas Janousek |
4fb0991 |
+ else if (atype == 1 && temp && QUOTED_NULL (temp) && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)))
|
|
Tomas Janousek |
4fb0991 |
+ rflags |= W_HASQUOTEDNULL;
|
|
Tomas Janousek |
4fb0991 |
}
|
|
Tomas Janousek |
4fb0991 |
#endif
|
|
Tomas Janousek |
4fb0991 |
***************
|
|
Tomas Janousek |
4fb0991 |
*** 4971,4974 ****
|
|
Tomas Janousek |
4fb0991 |
--- 5039,5043 ----
|
|
Tomas Janousek |
4fb0991 |
ret = alloc_word_desc ();
|
|
Tomas Janousek |
4fb0991 |
ret->word = temp;
|
|
Tomas Janousek |
4fb0991 |
+ ret->flags |= rflags;
|
|
Tomas Janousek |
4fb0991 |
}
|
|
Tomas Janousek |
4fb0991 |
return ret;
|
|
Tomas Janousek |
4fb0991 |
*** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006
|
|
Tomas Janousek |
4fb0991 |
--- patchlevel.h Mon Oct 16 14:22:54 2006
|
|
Tomas Janousek |
4fb0991 |
***************
|
|
Tomas Janousek |
4fb0991 |
*** 26,30 ****
|
|
Tomas Janousek |
4fb0991 |
looks for to find the patch level (for the sccs version string). */
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
! #define PATCHLEVEL 32
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
#endif /* _PATCHLEVEL_H_ */
|
|
Tomas Janousek |
4fb0991 |
--- 26,30 ----
|
|
Tomas Janousek |
4fb0991 |
looks for to find the patch level (for the sccs version string). */
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
! #define PATCHLEVEL 33
|
|
Tomas Janousek |
4fb0991 |
|
|
Tomas Janousek |
4fb0991 |
#endif /* _PATCHLEVEL_H_ */
|
|
Tomas Janousek |
4fb0991 |
|