diff options
Diffstat (limited to 'source/a/bash/patches/bash31-001')
-rw-r--r-- | source/a/bash/patches/bash31-001 | 104 |
1 files changed, 0 insertions, 104 deletions
diff --git a/source/a/bash/patches/bash31-001 b/source/a/bash/patches/bash31-001 deleted file mode 100644 index 4a10a02c..00000000 --- a/source/a/bash/patches/bash31-001 +++ /dev/null @@ -1,104 +0,0 @@ - BASH PATCH REPORT - ================= - -Bash-Release: 3.1 -Patch-ID: bash31-001 - -Bug-Reported-by: Mike Frysinger <vapier@gentoo.org> -Bug-Reference-ID: <20051212015924.GA820@toucan.gentoo.org> <20051214034438.GK1863@toucan.gentoo.org> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2005-12/msg00030.html http://lists.gnu.org/archive/html/bug-bash/2005-12/msg00041.html - -Bug-Description: - -There are parsing problems with compound assignments in several contexts, -including as arguments to builtins like `local', `eval', and `let', and -as multiple assignments in a single command. - -Patch: - -*** ../bash-3.1/parse.y Fri Nov 11 23:14:18 2005 ---- parse.y Fri Dec 16 20:43:07 2005 -*************** -*** 3696,3700 **** - b = builtin_address_internal (token, 0); - if (b && (b->flags & ASSIGNMENT_BUILTIN)) -! parser_state |= PST_ASSIGNOK; - } - ---- 3696,3702 ---- - b = builtin_address_internal (token, 0); - if (b && (b->flags & ASSIGNMENT_BUILTIN)) -! parser_state |= PST_ASSIGNOK; -! else if (STREQ (token, "eval") || STREQ (token, "let")) -! parser_state |= PST_ASSIGNOK; - } - -*************** -*** 4687,4691 **** - { - WORD_LIST *wl, *rl; -! int tok, orig_line_number, orig_token_size; - char *saved_token, *ret; - ---- 4689,4693 ---- - { - WORD_LIST *wl, *rl; -! int tok, orig_line_number, orig_token_size, orig_last_token, assignok; - char *saved_token, *ret; - -*************** -*** 4693,4696 **** ---- 4695,4699 ---- - orig_token_size = token_buffer_size; - orig_line_number = line_number; -+ orig_last_token = last_read_token; - - last_read_token = WORD; /* WORD to allow reserved words here */ -*************** -*** 4699,4702 **** ---- 4702,4707 ---- - token_buffer_size = 0; - -+ assignok = parser_state&PST_ASSIGNOK; /* XXX */ -+ - wl = (WORD_LIST *)NULL; /* ( */ - parser_state |= PST_COMPASSIGN; -*************** -*** 4741,4745 **** - } - -! last_read_token = WORD; - if (wl) - { ---- 4746,4750 ---- - } - -! last_read_token = orig_last_token; /* XXX - was WORD? */ - if (wl) - { -*************** -*** 4753,4756 **** ---- 4758,4765 ---- - if (retlenp) - *retlenp = (ret && *ret) ? strlen (ret) : 0; -+ -+ if (assignok) -+ parser_state |= PST_ASSIGNOK; -+ - return ret; - } -*** ../bash-3.1/patchlevel.h Wed Jul 20 13:58:20 2005 ---- patchlevel.h Wed Dec 7 13:48:42 2005 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 0 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 1 - - #endif /* _PATCHLEVEL_H_ */ |