summaryrefslogtreecommitdiff
path: root/git-difftool.perl
diff options
context:
space:
mode:
authorAlex Riesen <raa.lkml@gmail.com>2009-04-22 07:27:22 (GMT)
committerJunio C Hamano <gitster@pobox.com>2009-04-23 01:39:21 (GMT)
commite8d1180467da98c53663e462800f793d2341f5a1 (patch)
tree27d8364577c7506729f7806157174e97c0d100d8 /git-difftool.perl
parenta6c1a3827c934872726bafb35f51f2ad9b9e897f (diff)
downloadgit-e8d1180467da98c53663e462800f793d2341f5a1.zip
git-e8d1180467da98c53663e462800f793d2341f5a1.tar.gz
git-e8d1180467da98c53663e462800f793d2341f5a1.tar.bz2
Wait for git diff to finish in git difftool
In ActivetState Perl, exec does not wait for the started program. This breaks difftool tests and may cause unexpected behaviour: git difftool has returned, but the rest of code (diff and possibly the interactive program are still running in the background. Acked-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-difftool.perl')
-rwxr-xr-xgit-difftool.perl3
1 files changed, 2 insertions, 1 deletions
diff --git a/git-difftool.perl b/git-difftool.perl
index 948ff7f..bd828c2 100755
--- a/git-difftool.perl
+++ b/git-difftool.perl
@@ -82,4 +82,5 @@ sub generate_command
}
setup_environment();
-exec(generate_command());
+my $rc = system(generate_command());
+exit($rc | ($rc >> 8));