summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2013-09-18 11:46:06 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2013-09-18 11:46:06 -0700
commit70c87a9854d8ecbeb79e11f8336e0c6247659c8b (patch)
tree3d9a35d23d9122126eb9ba163c26cc02a7e5d528
parentMerge branch 'fc/contrib-bzr-hg-fixes' (diff)
parentgit-svn: fix termination issues for remote svn connections (diff)
downloadtgif-70c87a9854d8ecbeb79e11f8336e0c6247659c8b.tar.xz
Merge branch 'uh/git-svn-serf-fix'
"git-svn" used with SVN 1.8.0 when talking over https:// connection dumped core due to a bug in the serf library that SVN uses. Work it around on our side, even though the SVN side is being fixed. * uh/git-svn-serf-fix: git-svn: fix termination issues for remote svn connections
-rw-r--r--perl/Git/SVN/Ra.pm8
1 files changed, 8 insertions, 0 deletions
diff --git a/perl/Git/SVN/Ra.pm b/perl/Git/SVN/Ra.pm
index 75ecc425b6..a7b0119ee5 100644
--- a/perl/Git/SVN/Ra.pm
+++ b/perl/Git/SVN/Ra.pm
@@ -32,6 +32,14 @@ BEGIN {
}
}
+# serf has a bug that leads to a coredump upon termination if the
+# remote access object is left around (not fixed yet in serf 1.3.1).
+# Explicitly free it to work around the issue.
+END {
+ $RA = undef;
+ $ra_invalid = 1;
+}
+
sub _auth_providers () {
my @rv = (
SVN::Client::get_simple_provider(),