1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- BASH PATCH REPORT
- =================
- Bash-Release: 4.2
- Patch-ID: bash42-004
- Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
- Bug-Reference-ID: <201102182106.17834.vapier@gentoo.org>
- Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00222.html
- Bug-Description:
- When used in contexts where word splitting and quote removal were not
- performed, such as pattern removal or pattern substitution, empty strings
- (either literal or resulting from quoted variables that were unset or
- null) were not matched correctly, resulting in failure.
- Patch (apply with `patch -p0'):
- *** ../bash-4.2-patched/subst.c 2011-01-02 16:12:51.000000000 -0500
- --- ./subst.c 2011-02-18 22:30:13.000000000 -0500
- ***************
- *** 3373,3379 ****
- if (string == 0 || *string == '\0')
- return (WORD_LIST *)NULL;
-
- ! td.flags = 0;
- td.word = string;
- tresult = call_expand_word_internal (&td, quoted, 1, dollar_at_p, has_dollar_at);
- return (tresult);
- --- 3373,3379 ----
- if (string == 0 || *string == '\0')
- return (WORD_LIST *)NULL;
-
- ! td.flags = W_NOSPLIT2; /* no splitting, remove "" and '' */
- td.word = string;
- tresult = call_expand_word_internal (&td, quoted, 1, dollar_at_p, has_dollar_at);
- return (tresult);
- *** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010
- --- ./patchlevel.h Thu Feb 24 21:41:34 2011
- ***************
- *** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
- ! #define PATCHLEVEL 3
-
- #endif /* _PATCHLEVEL_H_ */
- --- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
- ! #define PATCHLEVEL 4
-
- #endif /* _PATCHLEVEL_H_ */
|