Would it be possible to also treat signals (128 and above) as 'special' values as well (as I've seen some merge tools self destruct like that from time to time)
----- Original Message ----- From: gits...@pobox.com To: j...@keeping.me.uk Cc: Tom Tanner (BLOOMBERG/ LONDON), dav...@gmail.com, firstname.lastname@example.org At: 08/14/16 04:21:18 John Keeping <j...@keeping.me.uk> writes: > At the moment difftool's "trust exit code" logic always suppresses the > exit status of the diff utility we invoke. This is useful because we > don't want to exit just because diff returned "1" because the files > differ, but it's confusing if the shell returns an error because the > selected diff utility is not found. > > POSIX specifies 127 as the exit status for "command not found" and 126 > for "command found but is not executable"  and at least bash and dash > follow this specification, while diff utilities generally use "1" for > the exit status we want to ignore. > > Handle 126 and 127 as special values, assuming that they always mean > that the command could not be executed. Sounds like a reasonable thing to do. Will queue; thanks.