Browse Source

busybox: fix bad variable substitution on right hand side of I/O redirection, imported patch from upstream bug 5282

SVN-Revision: 32162
Jo-Philipp Wich 13 years ago
parent
commit
e2be7290b1

+ 1 - 1
package/busybox/Makefile

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=busybox
 PKG_VERSION:=1.19.4
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 PKG_FLAGS:=essential
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2

+ 12 - 0
package/busybox/patches/251-ash_fix-redir-substitution.patch

@@ -0,0 +1,12 @@
+--- a/shell/ash.c
++++ b/shell/ash.c
+@@ -6846,8 +6846,7 @@ evalvar(char *p, int flags, struct strli
+ 		patloc = expdest - (char *)stackblock();
+ 		if (NULL == subevalvar(p, /* varname: */ NULL, patloc, subtype,
+ 				startloc, varflags,
+-//TODO: | EXP_REDIR too? All other such places do it too
+-				/* quotes: */ flags & (EXP_FULL | EXP_CASE),
++				/* quotes: */ flags & (EXP_FULL | EXP_CASE | EXP_REDIR),
+ 				var_str_list)
+ 		) {
+ 			int amount = expdest - (