From d17dacd0f0499a8c77d810e211e8ff96b8898c48 Mon Sep 17 00:00:00 2001 From: Herbert Xu Date: Sat, 19 May 2018 02:39:38 +0800 Subject: main: Only set savestatus in exitcmd Currently exitcmd sets exitstatus and then savestatus if the latter was previously set. In fact, as exitcmd always raises an exception and will either end up in the setjmp call in main() or exitshell(), where exitstatus is always replaced by savestatus if set, we only need to set savestatus. Signed-off-by: Herbert Xu --- src/main.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/main.c b/src/main.c index fcd3e7d..9f03717 100644 --- a/src/main.c +++ b/src/main.c @@ -339,13 +339,8 @@ exitcmd(int argc, char **argv) if (stoppedjobs()) return 0; - if (argc > 1) { - int status = number(argv[1]); - - exitstatus = status; - if (savestatus >= 0) - savestatus = status; - } + if (argc > 1) + savestatus = number(argv[1]); exraise(EXEXIT); /* NOTREACHED */ -- cgit 1.4.1