aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch
diff options
context:
space:
mode:
authorEric BENARD <eric@eukrea.com>2011-01-08 05:28:30 +0000
committerEric Bénard <eric@eukrea.com>2011-01-08 10:05:31 +0100
commit732793cefff5ef914860f36c1965caad7eff9af1 (patch)
treed32562bcbd788898920e7fd302ffdb77dfc7879f /recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch
parentbf4dfa0099e84cce86d6572ae06138ba8a25db21 (diff)
downloadopenembedded-732793cefff5ef914860f36c1965caad7eff9af1.tar.gz
busybox-1.8.1 : add latest fixes
patches from : http://busybox.net/downloads/fixes-1.18.1/ * hush : fix wrong prompt problem on empty interactive commants http://git.busybox.net/busybox/commit/?id=642e71a789156a96bcb18e6c5a0f52416c49d3b5 * mkswap : selinux build fix http://git.busybox.net/busybox/commit/?id=e66a212081bcca521760ccff3a2da0deccd99340 * suppress "'fast_strtol_10' defined but not used" warning http://git.busybox.net/busybox/commit/?id=f42c7b8fc161f5b3eb4e9c13f392daf7a11760c8 Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch')
-rw-r--r--recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch28
1 files changed, 23 insertions, 5 deletions
diff --git a/recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch b/recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch
index 3e189a9dc2..5281a52e53 100644
--- a/recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch
+++ b/recipes/busybox/busybox-1.18.1/busybox-1.18.1-hush.patch
@@ -1,6 +1,6 @@
diff -urpN busybox-1.18.1/shell/hush.c busybox-1.18.1-hush/shell/hush.c
--- busybox-1.18.1/shell/hush.c 2010-12-21 05:31:04.000000000 +0100
-+++ busybox-1.18.1-hush/shell/hush.c 2010-12-21 21:20:02.493651813 +0100
++++ busybox-1.18.1-hush/shell/hush.c 2011-01-07 14:59:19.649956156 +0100
@@ -913,7 +913,7 @@ static const struct built_in_command blt
*/
#if HUSH_DEBUG
@@ -177,7 +177,25 @@ diff -urpN busybox-1.18.1/shell/hush.c busybox-1.18.1-hush/shell/hush.c
prn++;
}
pi = pi->next;
-@@ -7445,7 +7461,7 @@ int hush_main(int argc, char **argv)
+@@ -4106,7 +4122,16 @@ static struct pipe *parse_stream(char **
+ if (IS_NULL_CMD(ctx.command)
+ && dest.length == 0 && !dest.has_quoted_part
+ ) {
+- continue;
++ /* This newline can be ignored. But...
++ * without the below check, interactive shell
++ * will ignore even lines with bare <newline>,
++ * and show the continuation prompt:
++ * ps1_prompt$ <enter>
++ * ps2> _ <=== wrong prompt, should be ps1
++ */
++ struct pipe *pi = ctx.list_head;
++ if (pi->num_cmds != 0)
++ continue;
+ }
+ /* Treat newline as a command separator. */
+ done_pipe(&ctx, PIPE_SEQ);
+@@ -7445,7 +7470,7 @@ int hush_main(int argc, char **argv)
unsigned builtin_argc;
char **e;
struct variable *cur_var;
@@ -186,7 +204,7 @@ diff -urpN busybox-1.18.1/shell/hush.c busybox-1.18.1-hush/shell/hush.c
INIT_G();
if (EXIT_SUCCESS) /* if EXIT_SUCCESS == 0, it is already done */
-@@ -7454,17 +7470,17 @@ int hush_main(int argc, char **argv)
+@@ -7454,17 +7479,17 @@ int hush_main(int argc, char **argv)
G.argv0_for_re_execing = argv[0];
#endif
/* Deal with HUSH_VERSION */
@@ -209,7 +227,7 @@ diff -urpN busybox-1.18.1/shell/hush.c busybox-1.18.1-hush/shell/hush.c
cur_var = G.top_var;
e = environ;
if (e) while (*e) {
-@@ -7479,8 +7495,8 @@ int hush_main(int argc, char **argv)
+@@ -7479,8 +7504,8 @@ int hush_main(int argc, char **argv)
e++;
}
/* (Re)insert HUSH_VERSION into env (AFTER we scanned the env!) */
@@ -220,7 +238,7 @@ diff -urpN busybox-1.18.1/shell/hush.c busybox-1.18.1-hush/shell/hush.c
/* Export PWD */
set_pwd_var(/*exp:*/ 1);
-@@ -7840,18 +7856,6 @@ int hush_main(int argc, char **argv)
+@@ -7840,18 +7865,6 @@ int hush_main(int argc, char **argv)
parse_and_run_file(stdin);
final_return: