Bash-4.3 patch 25
This commit is contained in:
parent
1a1f8b54fb
commit
b64a0e1d0b
5 changed files with 22 additions and 13 deletions
16
variables.c
16
variables.c
|
|
@ -358,13 +358,11 @@ initialize_shell_variables (env, privmode)
|
|||
temp_string[char_index] = ' ';
|
||||
strcpy (temp_string + char_index + 1, string);
|
||||
|
||||
if (posixly_correct == 0 || legal_identifier (name))
|
||||
parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST);
|
||||
|
||||
/* Ancient backwards compatibility. Old versions of bash exported
|
||||
functions like name()=() {...} */
|
||||
if (name[char_index - 1] == ')' && name[char_index - 2] == '(')
|
||||
name[char_index - 2] = '\0';
|
||||
/* Don't import function names that are invalid identifiers from the
|
||||
environment, though we still allow them to be defined as shell
|
||||
variables. */
|
||||
if (legal_identifier (name))
|
||||
parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
|
||||
|
||||
if (temp_var = find_function (name))
|
||||
{
|
||||
|
|
@ -381,10 +379,6 @@ initialize_shell_variables (env, privmode)
|
|||
last_command_exit_value = 1;
|
||||
report_error (_("error importing function definition for `%s'"), name);
|
||||
}
|
||||
|
||||
/* ( */
|
||||
if (name[char_index - 1] == ')' && name[char_index - 2] == '\0')
|
||||
name[char_index - 2] = '('; /* ) */
|
||||
}
|
||||
#if defined (ARRAY_VARS)
|
||||
# if ARRAY_EXPORT
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue