[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fwd: Don't set $?=130 when discarding the current command line (not
From: |
Robert Elz |
Subject: |
Re: Fwd: Don't set $?=130 when discarding the current command line (not run yet) with CTRL-C? |
Date: |
Thu, 21 Nov 2019 14:42:07 +0700 |
Date: Thu, 21 Nov 2019 10:27:08 +0800
From: Clark Wang <dearvoid@gmail.com>
Message-ID:
<CADv8-oi+7MQ042_cAjtPrr4Jm=EFjjFLHGxSOPpWwF3066uotA@mail.gmail.com>
| So is it OK to not change $? when people are pressing CTRL-C to
| discard the input?
I would say not only "OK" but "required" - $? should only ever be
changed as a result of command execution (or attempted execution in
case the exec, or redirection, or something, fails). Even if there's
a SIGINT trap handler that runs commands, $? should not be being
altered merely as a result of a SIGINT, only when that SIGINT causes
a command to abort, in which case that command's exit status (which
will be 128+SIGINT .. typically 130 .. when the SIGINT wasn't caught
by the application) should $? be altered.
Of course, Chet might disagree...
kre