summaryrefslogtreecommitdiff
path: root/shell/ash.c
diff options
context:
space:
mode:
authorDenys Vlasenko2010-08-30 15:20:07 +0200
committerDenys Vlasenko2010-08-30 15:20:07 +0200
commit0ff78a0166b284215a15a41e82e200301fb45f1e (patch)
treeba41c77594cabcdf1c516d3d67fb2ba3a3796666 /shell/ash.c
parentf7a8433535b7072b61acf31d97dab7da1d4b140b (diff)
downloadbusybox-0ff78a0166b284215a15a41e82e200301fb45f1e.zip
busybox-0ff78a0166b284215a15a41e82e200301fb45f1e.tar.gz
ash: small code shrink (-21 bytes)
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'shell/ash.c')
-rw-r--r--shell/ash.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/shell/ash.c b/shell/ash.c
index c8e7e3b..921367b 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -11146,10 +11146,9 @@ readtoken1(int c, int syntax, char *eofmark, int striptabs)
if (dqvarnest > 0) {
dqvarnest--;
}
- USTPUTC(CTLENDVAR, out);
- } else {
- USTPUTC(c, out);
+ c = CTLENDVAR;
}
+ USTPUTC(c, out);
break;
#if ENABLE_SH_MATH_SUPPORT
case CLP: /* '(' in arithmetic */
@@ -11158,25 +11157,23 @@ readtoken1(int c, int syntax, char *eofmark, int striptabs)
break;
case CRP: /* ')' in arithmetic */
if (parenlevel > 0) {
- USTPUTC(c, out);
- --parenlevel;
+ parenlevel--;
} else {
if (pgetc() == ')') {
if (--arinest == 0) {
- USTPUTC(CTLENDARI, out);
syntax = prevsyntax;
dblquote = (syntax == DQSYNTAX);
- } else
- USTPUTC(')', out);
+ c = CTLENDARI;
+ }
} else {
/*
* unbalanced parens
* (don't 2nd guess - no error)
*/
pungetc();
- USTPUTC(')', out);
}
}
+ USTPUTC(c, out);
break;
#endif
case CBQUOTE: /* '`' */