[PATCH 2/5] ash: save a few bytes in code to parse case statements

Ron Yorston rmy at pobox.com
Mon Aug 3 12:46:25 UTC 2015


Based on commit 49b82fc from git://git.kernel.org/pub/scm/utils/dash/dash.git
by Herbert Xu.

function                                             old     new   delta
parse_command                                       1563    1555      -8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-8)               Total: -8 bytes

Signed-off-by: Ron Yorston <rmy at pobox.com>
---
 shell/ash.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/shell/ash.c b/shell/ash.c
index 450a42f..7f3808b 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -10960,10 +10960,8 @@ parse_command(void)
 		/*n2->narg.next = NULL; - stzalloc did it */
 		n2->narg.text = wordtext;
 		n2->narg.backquote = backquotelist;
-		do {
-			checkkwd = CHKKWD | CHKALIAS;
-		} while (readtoken() == TNL);
-		if (lasttoken != TIN)
+		checkkwd = CHKNL | CHKKWD | CHKALIAS;
+		if (readtoken() != TIN)
 			raise_error_unexpected_syntax(TIN);
 		cpp = &n1->ncase.cases;
  next_case:
-- 
2.4.3



More information about the busybox mailing list