diff mbox

main: Only set savestatus in exitcmd

Message ID 20180505152110.qrqv4we3gtxg6fij@gondor.apana.org.au (mailing list archive)
State Superseded
Delegated to: Herbert Xu
Headers show

Commit Message

Herbert Xu May 5, 2018, 3:21 p.m. UTC
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 <herbert@gondor.apana.org.au>
diff mbox

Patch

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 */