Displaying 2 results from an estimated 2 matches for "ef6ec0ef".
Did you mean:
ea6ec8ef
2019 Jan 25
0
[klibc:update-dash] eval: Fix exit status when calling eval/dot with no commands
...ing.
Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
---
usr/dash/eval.c | 3 ++-
usr/dash/main.c | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/usr/dash/eval.c b/usr/dash/eval.c
index db7639a4..ef6ec0ef 100644
--- a/usr/dash/eval.c
+++ b/usr/dash/eval.c
@@ -172,7 +172,8 @@ evalstring(char *s, int flags)
status = 0;
while ((n = parsecmd(0)) != NEOF) {
evaltree(n, flags & ~(parser_eof() ? 0 : EV_EXIT));
- status = exitstatus;
+ if (n)
+ status = exitstatus;
popstackmark(&smark)...
2019 Jan 25
0
[klibc:update-dash] eval: Return status in eval functions
...ed-off-by: Ben Hutchings <ben at decadent.org.uk>
---
usr/dash/eval.c | 139 ++++++++++++++++++++++++++++++--------------------------
usr/dash/eval.h | 2 +-
usr/dash/main.c | 6 ++-
3 files changed, 80 insertions(+), 67 deletions(-)
diff --git a/usr/dash/eval.c b/usr/dash/eval.c
index ef6ec0ef..6ba64b12 100644
--- a/usr/dash/eval.c
+++ b/usr/dash/eval.c
@@ -81,16 +81,16 @@ int savestatus = -1; /* exit status of last command outside traps */
STATIC
#endif
void evaltreenr(union node *, int) __attribute__ ((__noreturn__));
-STATIC void evalloop(union node *, int);
-STATIC void evalfor(u...