e5fbd81a61
git-svn-id: svn://svn.openwrt.org/openwrt/packages@31746 3c298f89-4303-0410-b956-a3cf2f4a3e73
43 lines
1.2 KiB
Diff
43 lines
1.2 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'):
|
|
|
|
--- a/builtins/read.def
|
|
+++ b/builtins/read.def
|
|
@@ -642,6 +642,12 @@ assign_vars:
|
|
xfree (input_string);
|
|
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));
|
|
|
|
alist = list_string (input_string, ifs_chars, 0);
|
|
--- a/patchlevel.h
|
|
+++ b/patchlevel.h
|
|
@@ -25,6 +25,6 @@
|
|
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
-#define PATCHLEVEL 16
|
|
+#define PATCHLEVEL 17
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|