48 lines
1.4 KiB
Diff
48 lines
1.4 KiB
Diff
|
BASH PATCH REPORT
|
||
|
=================
|
||
|
|
||
|
Bash-Release: 4.2
|
||
|
Patch-ID: bash42-017
|
||
|
|
||
|
Bug-Reported-by: Curtis Doty <Curtis@GreenKey.net>
|
||
|
Bug-Reference-ID: <20110621035324.A4F70849F59@mx1.iParadigms.net>
|
||
|
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-06/msg00053.html
|
||
|
|
||
|
Bug-Description:
|
||
|
|
||
|
Using `read -a foo' where foo was an already-declared associative array
|
||
|
caused the shell to die with a segmentation fault.
|
||
|
|
||
|
Patch (apply with `patch -p0'):
|
||
|
|
||
|
*** ../bash-4.2-patched/builtins/read.def 2011-01-04 11:43:36.000000000 -0500
|
||
|
--- ./builtins/read.def 2011-06-21 10:31:02.000000000 -0400
|
||
|
***************
|
||
|
*** 643,646 ****
|
||
|
--- 642,651 ----
|
||
|
return EXECUTION_FAILURE; /* readonly or noassign */
|
||
|
}
|
||
|
+ if (assoc_p (var))
|
||
|
+ {
|
||
|
+ builtin_error (_("%s: cannot convert associative to indexed array"), arrayname);
|
||
|
+ xfree (input_string);
|
||
|
+ return EXECUTION_FAILURE; /* existing associative array */
|
||
|
+ }
|
||
|
array_flush (array_cell (var));
|
||
|
|
||
|
*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010
|
||
|
--- ./patchlevel.h Thu Feb 24 21:41:34 2011
|
||
|
***************
|
||
|
*** 26,30 ****
|
||
|
looks for to find the patch level (for the sccs version string). */
|
||
|
|
||
|
! #define PATCHLEVEL 16
|
||
|
|
||
|
#endif /* _PATCHLEVEL_H_ */
|
||
|
--- 26,30 ----
|
||
|
looks for to find the patch level (for the sccs version string). */
|
||
|
|
||
|
! #define PATCHLEVEL 17
|
||
|
|
||
|
#endif /* _PATCHLEVEL_H_ */
|