diff options
author | Jilles Tjoelker <jilles@stack.nl> | 2010-03-10 13:29:11 +0800 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2010-03-10 13:29:11 +0800 |
commit | ea2cf705d50024b09e00f8f5bf9c666429bccfa5 (patch) | |
tree | 77497594bf8a9b1ac6218e0f3e073cfbfa77bab6 /src | |
parent | [REDIR] Do not truncate file for FROMTO redirection (diff) | |
download | dash-ea2cf705d50024b09e00f8f5bf9c666429bccfa5.tar.gz dash-ea2cf705d50024b09e00f8f5bf9c666429bccfa5.zip |
[ARITH] Fix logical or result value
Another change I'm making to the arith code is making || return 0 or 1 only, matching C, POSIX and other shells. Apart from the compliance issue, it is also bad to expose implementation details like the exact meaning of 'noeval' to scripts such that they may come to depend on them. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src')
-rw-r--r-- | src/arith_yacc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arith_yacc.c b/src/arith_yacc.c index 74b95f8..6c5a720 100644 --- a/src/arith_yacc.c +++ b/src/arith_yacc.c @@ -253,7 +253,7 @@ static intmax_t or(int token, union yystype *val, int op, int noeval) b = or(token, val, yylex(), noeval | !!a); - return a | b; + return a || b; } static intmax_t cond(int token, union yystype *val, int op, int noeval) |