58 lines
1.5 KiB
Plaintext
58 lines
1.5 KiB
Plaintext
BASH PATCH REPORT
|
|
=================
|
|
|
|
Bash-Release: 4.3
|
|
Patch-ID: bash43-039
|
|
|
|
Bug-Reported-by: SN <poczta-sn@gazeta.pl>
|
|
Bug-Reference-ID: <54E2554C.205@gazeta.pl>
|
|
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00060.html
|
|
|
|
Bug-Description:
|
|
|
|
Using the output of `declare -p' when run in a function can result in variables
|
|
that are invisible to `declare -p'. This problem occurs when an assignment
|
|
builtin such as `declare' receives a quoted compound array assignment as one of
|
|
its arguments.
|
|
|
|
Patch (apply with `patch -p0'):
|
|
|
|
*** /usr/src/local/bash/bash-4.3-patched/arrayfunc.c 2014-10-01 13:08:48.000000000 -0400
|
|
--- arrayfunc.c 2015-02-19 14:33:05.000000000 -0500
|
|
***************
|
|
*** 405,408 ****
|
|
--- 405,411 ----
|
|
else
|
|
array_insert (a, i, l->word->word);
|
|
+
|
|
+ VUNSETATTR (var, att_invisible); /* no longer invisible */
|
|
+
|
|
return var;
|
|
}
|
|
***************
|
|
*** 635,638 ****
|
|
--- 638,645 ----
|
|
if (nlist)
|
|
dispose_words (nlist);
|
|
+
|
|
+ if (var)
|
|
+ VUNSETATTR (var, att_invisible); /* no longer invisible */
|
|
+
|
|
return (var);
|
|
}
|
|
*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
|
|
--- 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 38
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|
|
--- 26,30 ----
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
! #define PATCHLEVEL 39
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|