openwrt-packages/utils/bash/patches/117-upstream-bash42-017.patch

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_ */