e5fbd81a61
git-svn-id: svn://svn.openwrt.org/openwrt/packages@31746 3c298f89-4303-0410-b956-a3cf2f4a3e73
41 lines
1.2 KiB
Diff
41 lines
1.2 KiB
Diff
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'):
|
|
|
|
--- a/subst.c
|
|
+++ b/subst.c
|
|
@@ -3373,7 +3373,7 @@ expand_string_for_rhs (string, quoted, d
|
|
if (string == 0 || *string == '\0')
|
|
return (WORD_LIST *)NULL;
|
|
|
|
- td.flags = 0;
|
|
+ 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);
|
|
--- a/patchlevel.h
|
|
+++ b/patchlevel.h
|
|
@@ -25,6 +25,6 @@
|
|
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
-#define PATCHLEVEL 3
|
|
+#define PATCHLEVEL 4
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|