Browse Source

difftool: exit(0) when usage is printed

Prior to this commit, the script exited with an error whenever the
usage string was printed, regardless of the reason it was done. In
cases where usage was printed due to a user request (e.g. '-h'
option), the script should exit without error (exit 0).

This commit adds an argument to the usage function that allows the
exit code to be specified when the function is called.

Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Tim Henigan 13 years ago committed by Junio C Hamano
parent
commit
283607694c
  1. 9
      git-difftool.perl

9
git-difftool.perl

@ -20,6 +20,7 @@ use Git; @@ -20,6 +20,7 @@ use Git;

sub usage
{
my $exitcode = shift;
print << 'USAGE';
usage: git difftool [-t|--tool=<tool>]
[-x|--extcmd=<cmd>]
@ -27,7 +28,7 @@ usage: git difftool [-t|--tool=<tool>] @@ -27,7 +28,7 @@ usage: git difftool [-t|--tool=<tool>]
[--prompt] [-y|--no-prompt]
['git diff' options]
USAGE
exit 1;
exit($exitcode);
}

sub setup_environment
@ -58,14 +59,14 @@ GetOptions('g|gui!' => \$gui, @@ -58,14 +59,14 @@ GetOptions('g|gui!' => \$gui,
'x|extcmd:s' => \$extcmd);

if (defined($help)) {
usage();
usage(0);
}
if (defined($difftool_cmd)) {
if (length($difftool_cmd) > 0) {
$ENV{GIT_DIFF_TOOL} = $difftool_cmd;
} else {
print "No <tool> given for --tool=<tool>\n";
usage();
usage(1);
}
}
if (defined($extcmd)) {
@ -73,7 +74,7 @@ if (defined($extcmd)) { @@ -73,7 +74,7 @@ if (defined($extcmd)) {
$ENV{GIT_DIFFTOOL_EXTCMD} = $extcmd;
} else {
print "No <cmd> given for --extcmd=<cmd>\n";
usage();
usage(1);
}
}
if ($gui) {

Loading…
Cancel
Save