Fix problems with the exit code
commitaf297183a09f69e4befecb3e45c55b4d4d1aa429
authorAlexey Borzenkov <snaury@gmail.com>
Mon, 2 Nov 2009 23:12:22 +0000 (3 00:12 +0100)
committerSebastian Schuberth <sschuberth@gmail.com>
Tue, 3 Nov 2009 14:28:15 +0000 (3 15:28 +0100)
tree917ac95cea1d63539c1b48429b08dab0ac0e4671
parent951781c15332cb768efe1a6d26ca5205a7b54dbd
Fix problems with the exit code

If you call git.cmd from a batch file, then you receive the exit code and can
check it. However, if you call git.cmd from a perl/ruby script, the exit code
will always be zero.

This is happening because cmd.exe has an obscure bug and exit /b does not set
the exit code if git.cmd was not called from a batch file (i.e. cmd /c git from
a perl/ruby script). exit %ErrorLevel% would work, but it would make it
impossible to easily call git from batch files. So the solution is to run
cmd.exe /c exit /b %ErrorLevel% as a last line in the batch file. This must be
setting something internal to cmd.exe and causes it to work in all situations.

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
cmd/git.cmd