0037-patchlevel-37.patch 1.38 KB
From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-037

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>

			     BASH PATCH REPORT
			     =================

Bash-Release:	4.3
Patch-ID:	bash43-037

Bug-Reported-by:	Greg Wooledge <wooledg@eeg.ccf.org>
Bug-Reference-ID:	<20150204144240.GN13956@eeg.ccf.org>
Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00007.html

Bug-Description:

If an associative array uses `@' or `*' as a subscript, `declare -p' produces
output that cannot be reused as input.

Patch (apply with `patch -p0'):

*** a/bash-4.3-patched/assoc.c	2011-11-05 16:39:05.000000000 -0400
--- b/assoc.c	2015-02-04 15:28:25.000000000 -0500
***************
*** 437,440 ****
--- 440,445 ----
  	if (sh_contains_shell_metas (tlist->key))
  	  istr = sh_double_quote (tlist->key);
+ 	else if (ALL_ELEMENT_SUB (tlist->key[0]) && tlist->key[1] == '\0')
+ 	  istr = sh_double_quote (tlist->key);	
  	else
  	  istr = tlist->key;	
*** a/bash-4.3/patchlevel.h	2012-12-29 10:47:57.000000000 -0500
--- b/patchlevel.h	2014-03-20 20:01:28.000000000 -0400
***************
*** 26,30 ****
     looks for to find the patch level (for the sccs version string). */
  
! #define PATCHLEVEL 36
  
  #endif /* _PATCHLEVEL_H_ */
--- 26,30 ----
     looks for to find the patch level (for the sccs version string). */
  
! #define PATCHLEVEL 37
  
  #endif /* _PATCHLEVEL_H_ */