diff options
author | Eric Wong <normalperson@yhbt.net> | 2006-11-24 22:38:18 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-11-24 23:17:00 -0800 |
commit | d25c26e771fdf771f264dc85be348719886d354f (patch) | |
tree | 6b2f35b8f56093093d54ba029c0b70f73a17d645 /git-svn.perl | |
parent | 747fa12cef73b6ca04fffaddaad7326cf546cdea (diff) | |
download | git-d25c26e771fdf771f264dc85be348719886d354f.tar.gz git-d25c26e771fdf771f264dc85be348719886d354f.tar.xz |
git-svn: exit with status 1 for test failures
Some versions of the SVN libraries cause die() to exit with 255,
and 40cf043389ef4cdf3e56e7c4268d6f302e387fa0 tightened up
test_expect_failure to reject return values >128.
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-svn.perl')
-rwxr-xr-x | git-svn.perl | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/git-svn.perl b/git-svn.perl index 5d67771c2..0a47b1f9f 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -21,6 +21,7 @@ $ENV{TZ} = 'UTC'; $ENV{LC_ALL} = 'C'; $| = 1; # unbuffer STDOUT +sub fatal (@) { print STDERR $@; exit 1 } # If SVN:: library support is added, please make the dependencies # optional and preserve the capability to use the command-line client. # use eval { require SVN::... } to make it lazy load @@ -569,7 +570,7 @@ sub commit_lib { $no = 1; } } - close $fh or croak $?; + close $fh or exit 1; if (! defined $r_new && ! defined $cmt_new) { unless ($no) { die "Failed to parse revision information\n"; @@ -868,13 +869,16 @@ sub commit_diff { print "Committed $_[0]\n"; }, @lock) ); - my $mods = libsvn_checkout_tree($ta, $tb, $ed); - if (@$mods == 0) { - print "No changes\n$ta == $tb\n"; - $ed->abort_edit; - } else { - $ed->close_edit; - } + eval { + my $mods = libsvn_checkout_tree($ta, $tb, $ed); + if (@$mods == 0) { + print "No changes\n$ta == $tb\n"; + $ed->abort_edit; + } else { + $ed->close_edit; + } + }; + fatal "$@\n" if $@; $_message = $_file = undef; return $rev_committed; } |