mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-25 06:47:56 +02:00
commit bash-20140725 snapshot
This commit is contained in:
@@ -6496,3 +6496,12 @@ tests/array.right
|
||||
and
|
||||
declare -a foo
|
||||
are not equivalent
|
||||
|
||||
7/22
|
||||
----
|
||||
subst.c
|
||||
- parameter_brace_expand: after calling parameter_brace_expand_indir,
|
||||
turn off the W_ARRAYIND flag in the word it returns, because there
|
||||
is no way for it to return the index that should be used, and the
|
||||
rest of the function assumes that IND is valid if W_ARRAYIND is set.
|
||||
Fixes bug reported by Corentin Peuvrel <cpeuvrel@pom-monitoring.com>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -339,6 +339,11 @@ dump_word_flags (flags)
|
||||
|
||||
f = flags;
|
||||
fprintf (stderr, "%d -> ", f);
|
||||
if (f & W_ARRAYIND)
|
||||
{
|
||||
f &= ~W_ARRAYIND;
|
||||
fprintf (stderr, "W_ARRAYIND%s", f ? "|" : "");
|
||||
}
|
||||
if (f & W_ASSIGNASSOC)
|
||||
{
|
||||
f &= ~W_ASSIGNASSOC;
|
||||
@@ -7439,7 +7444,13 @@ parameter_brace_expand (string, indexp, quoted, pflags, quoted_dollar_atp, conta
|
||||
}
|
||||
|
||||
if (want_indir)
|
||||
tdesc = parameter_brace_expand_indir (name + 1, var_is_special, quoted, quoted_dollar_atp, contains_dollar_at);
|
||||
{
|
||||
tdesc = parameter_brace_expand_indir (name + 1, var_is_special, quoted, quoted_dollar_atp, contains_dollar_at);
|
||||
/* Turn off the W_ARRAYIND flag because there is no way for this function
|
||||
to return the index we're supposed to be using. */
|
||||
if (tdesc && tdesc->flags)
|
||||
tdesc->flags &= ~W_ARRAYIND;
|
||||
}
|
||||
else
|
||||
tdesc = parameter_brace_expand_word (name, var_is_special, quoted, PF_IGNUNBOUND|(pflags&(PF_NOSPLIT2|PF_ASSIGNRHS)), &ind);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user