In hush: $ cmdout=`false` $ echo $? 0 The $? variable should have been set to 1 (the exit code of the back-quoted command), not 0.
Note that Busybox's 'ash' does it correctly.
This is already fixed in git and will be working correctly in 1.17.x
Thanks, Denys. I should have checked the git master branch first! Sorry for the noise.