commit bash-20130720 snapshot

This commit is contained in:
Chet Ramey
2013-08-05 09:55:44 -04:00
parent fc34b3a446
commit 7571d3f4bb
30 changed files with 19987 additions and 588 deletions
+7 -3
View File
@@ -607,7 +607,7 @@ execute_command_internal (command, asynchronous, pipe_in, pipe_out,
want to note this before execute_in_subshell modifies the
COMMAND struct. Need to keep in mind that execute_in_subshell
runs the exit trap for () subshells itself. */
/* This handles { command; } &
/* This handles { command; } & */
s = user_subshell == 0 && command->type == cm_group && pipe_in == NO_PIPE && pipe_out == NO_PIPE && asynchronous;
/* run exit trap for : | { ...; } and { ...; } | : */
/* run exit trap for : | ( ...; ) and ( ...; ) | : */
@@ -3748,13 +3748,13 @@ fix_assignment_words (words)
{
WORD_LIST *w, *wcmd;
struct builtin *b;
int assoc, global, array;
int assoc, global, array, integer;
if (words == 0)
return;
b = 0;
assoc = global = array = 0;
assoc = global = array = integer = 0;
/* Skip over assignment statements preceding a command name */
wcmd = words;
@@ -3789,6 +3789,8 @@ fix_assignment_words (words)
#endif
if (global)
w->word->flags |= W_ASSNGLOBAL;
if (integer)
w->word->flags |= W_ASSIGNINT;
}
#if defined (ARRAY_VARS)
/* Note that we saw an associative array option to a builtin that takes
@@ -3814,6 +3816,8 @@ fix_assignment_words (words)
array = 1;
if ((wcmd->word->flags & W_ASSNBLTIN) && strchr (w->word->word+1, 'g'))
global = 1;
if ((wcmd->word->flags & W_ASSNBLTIN) && strchr (w->word->word+1, 'i'))
integer = 1;
}
}