Merge branch 'rj/maint-difftool-cygwin-workaround' into maint

* rj/maint-difftool-cygwin-workaround:
  difftool: Fix failure on Cygwin
This commit is contained in:
Junio C Hamano 2011-01-19 08:26:24 -08:00
Родитель f8d0215c81 d531174fe3
Коммит ea9590789f
1 изменённых файлов: 8 добавлений и 4 удалений

Просмотреть файл

@ -52,6 +52,7 @@ sub generate_command
my @command = (exe('git'), 'diff');
my $skip_next = 0;
my $idx = -1;
my $prompt = '';
for my $arg (@ARGV) {
$idx++;
if ($skip_next) {
@ -89,13 +90,11 @@ sub generate_command
next;
}
if ($arg eq '-y' || $arg eq '--no-prompt') {
$ENV{GIT_DIFFTOOL_NO_PROMPT} = 'true';
delete $ENV{GIT_DIFFTOOL_PROMPT};
$prompt = 'no';
next;
}
if ($arg eq '--prompt') {
$ENV{GIT_DIFFTOOL_PROMPT} = 'true';
delete $ENV{GIT_DIFFTOOL_NO_PROMPT};
$prompt = 'yes';
next;
}
if ($arg eq '-h' || $arg eq '--help') {
@ -103,6 +102,11 @@ sub generate_command
}
push @command, $arg;
}
if ($prompt eq 'yes') {
$ENV{GIT_DIFFTOOL_PROMPT} = 'true';
} elsif ($prompt eq 'no') {
$ENV{GIT_DIFFTOOL_NO_PROMPT} = 'true';
}
return @command
}