ash: [BUILTIN] Use EXEXIT in place of EXEXEC
authorDenys Vlasenko <vda.linux@googlemail.com>
Tue, 25 Oct 2016 15:24:25 +0000 (17:24 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Tue, 25 Oct 2016 15:24:25 +0000 (17:24 +0200)
commit061a09091f21f8e2d3ac61cb1a5f8c919ddce26e
tree855cbdc5b7a1b404b623f7a86ee2c7ea97e5a00e
parentb7adf7ac32e65906932935daf3d7a02d94818e09
ash: [BUILTIN] Use EXEXIT in place of EXEXEC

Upstream commit:

    Date: Sun, 28 Nov 2010 20:44:37 +0800
    [BUILTIN] Use EXEXIT in place of EXEXEC

    The intended semantics of EXEXEC are identical to EXEXIT, so
    simplify by using EXEXIT directly.

    Functional change: in edge cases (exec within a trap handler),
    this causes the exit status from exec not to be clobbered.
    For example, without this patch:

     $ sh -c 'trap "exec nonexistent" EXIT'; echo $?
     exec: 1: nonexistent: not found
     0

    And with it:

     $ sh -c 'trap "exec nonexistent" EXIT'; echo $?
     exec: 1: nonexistent: not found
     127

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
shell/ash.c