summaryrefslogtreecommitdiff
path: root/aports/busybox/0018-ash-fix-ifs-cleanup-on-error-paths.patch
diff options
context:
space:
mode:
Diffstat (limited to 'aports/busybox/0018-ash-fix-ifs-cleanup-on-error-paths.patch')
-rw-r--r--aports/busybox/0018-ash-fix-ifs-cleanup-on-error-paths.patch91
1 files changed, 0 insertions, 91 deletions
diff --git a/aports/busybox/0018-ash-fix-ifs-cleanup-on-error-paths.patch b/aports/busybox/0018-ash-fix-ifs-cleanup-on-error-paths.patch
deleted file mode 100644
index c09bc84..0000000
--- a/aports/busybox/0018-ash-fix-ifs-cleanup-on-error-paths.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 1c5455284234e894dfb6086bf7f3e9a6d5d9611f Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Tue, 2 Aug 2022 11:13:44 +0200
-Subject: [PATCH] ash: fix ifs cleanup on error paths
-
-Patch by Alex Gorinson <algore3698@gmail.com>
-
-function old new delta
-evalvar 477 495 +18
-varvalue 603 618 +15
-subevalvar 1557 1572 +15
-------------------------------------------------------------------------------
-(add/remove: 0/0 grow/shrink: 3/0 up/down: 48/0) Total: 48 bytes
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- shell/ash.c | 2 ++
- shell/ash_test/ash-heredoc/heredoc_and_cmd.right | 2 ++
- shell/ash_test/ash-heredoc/heredoc_and_cmd.tests | 8 ++++++++
- shell/hush_test/hush-heredoc/heredoc_and_cmd.right | 2 ++
- shell/hush_test/hush-heredoc/heredoc_and_cmd.tests | 8 ++++++++
- 5 files changed, 22 insertions(+)
- create mode 100644 shell/ash_test/ash-heredoc/heredoc_and_cmd.right
- create mode 100755 shell/ash_test/ash-heredoc/heredoc_and_cmd.tests
- create mode 100644 shell/hush_test/hush-heredoc/heredoc_and_cmd.right
- create mode 100755 shell/hush_test/hush-heredoc/heredoc_and_cmd.tests
-
-diff --git a/shell/ash.c b/shell/ash.c
-index d29de37b7..c731a333b 100644
---- a/shell/ash.c
-+++ b/shell/ash.c
-@@ -7028,6 +7028,7 @@ varunset(const char *end, const char *var, const char *umsg, int varflags)
- msg = umsg;
- }
- }
-+ ifsfree();
- ash_msg_and_raise_error("%.*s: %s%s", (int)(end - var - 1), var, msg, tail);
- }
-
-@@ -7453,6 +7454,7 @@ varvalue(char *name, int varflags, int flags, int quoted)
- if (discard)
- return -1;
-
-+ ifsfree();
- raise_error_syntax("bad substitution");
- }
-
-diff --git a/shell/ash_test/ash-heredoc/heredoc_and_cmd.right b/shell/ash_test/ash-heredoc/heredoc_and_cmd.right
-new file mode 100644
-index 000000000..25ae70561
---- /dev/null
-+++ b/shell/ash_test/ash-heredoc/heredoc_and_cmd.right
-@@ -0,0 +1,2 @@
-+./heredoc_and_cmd.tests: line 4: D: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-+Y
-diff --git a/shell/ash_test/ash-heredoc/heredoc_and_cmd.tests b/shell/ash_test/ash-heredoc/heredoc_and_cmd.tests
-new file mode 100755
-index 000000000..197542de7
---- /dev/null
-+++ b/shell/ash_test/ash-heredoc/heredoc_and_cmd.tests
-@@ -0,0 +1,8 @@
-+# The bug was only happening with <<REDIR;CMD form below:
-+M='AAAAAAAAAAAAAAAAA'
-+fff(){
-+date <<000; echo Y
-+${D?$M$M$M$M$M$M}
-+000
-+}
-+fff
-diff --git a/shell/hush_test/hush-heredoc/heredoc_and_cmd.right b/shell/hush_test/hush-heredoc/heredoc_and_cmd.right
-new file mode 100644
-index 000000000..5c19a0621
---- /dev/null
-+++ b/shell/hush_test/hush-heredoc/heredoc_and_cmd.right
-@@ -0,0 +1,2 @@
-+hush: D: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-+Y
-diff --git a/shell/hush_test/hush-heredoc/heredoc_and_cmd.tests b/shell/hush_test/hush-heredoc/heredoc_and_cmd.tests
-new file mode 100755
-index 000000000..197542de7
---- /dev/null
-+++ b/shell/hush_test/hush-heredoc/heredoc_and_cmd.tests
-@@ -0,0 +1,8 @@
-+# The bug was only happening with <<REDIR;CMD form below:
-+M='AAAAAAAAAAAAAAAAA'
-+fff(){
-+date <<000; echo Y
-+${D?$M$M$M$M$M$M}
-+000
-+}
-+fff