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