ash: [ERROR] Set exitstatus in onint
authorDenys Vlasenko <vda.linux@googlemail.com>
Sat, 1 Oct 2016 14:03:11 +0000 (16:03 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Sat, 1 Oct 2016 14:03:11 +0000 (16:03 +0200)
commit4d12e944eaf54f0fd0bbb6b70abbb77648cca795
treed9e8e2ef51b204e2a3a515343c15bf74329c2021
parent0840c91909dd6a9a676ec105ef1ca5e8d36ce6e8
ash: [ERROR] Set exitstatus in onint

Partially backported this commit:

    Date: Thu, 2 Oct 2014 21:07:55 +0800
    [ERROR] Set exitstatus in onint

    Currently the exit status when we receive SIGINT is set in evalcommand
    which means that it doesn't always get set.  For example, if you press
    CTRL-C at the prompt of an interactive dash, the exit status is not
    set to 130 as it is in many other Bourne shells.

    This patch fixes this by moving the setting of the exit status into
    onint which also simplifies evalcommand.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
The part after "if (evalbltin(cmdentry.u.cmd, argc, argv, flags))"
causes testsuite failures in signal handling, so left unchanged.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
shell/ash.c