summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2018-03-22 14:24:11 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2018-03-22 14:24:11 -0700
commit34b9ec8dd9bf6d3f6fa04f295351f917042a33fa (patch)
tree6a51403550c6e8f5b11bf70ebb615539e23cdf43
parentMerge branch 'nd/list-merge-strategy' into maint (diff)
parentgit-svn: control destruction order to avoid segfault (diff)
downloadtgif-34b9ec8dd9bf6d3f6fa04f295351f917042a33fa.tar.xz
Merge branch 'ew/svn-branch-segfault-fix' into maint
Workaround for segfault with more recent versions of SVN. * ew/svn-branch-segfault-fix: git-svn: control destruction order to avoid segfault
-rwxr-xr-xgit-svn.perl5
1 files changed, 5 insertions, 0 deletions
diff --git a/git-svn.perl b/git-svn.perl
index 76a75d0b3d..a6b6c3e40c 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -1200,6 +1200,11 @@ sub cmd_branch {
$ctx->copy($src, $rev, $dst)
unless $_dry_run;
+ # Release resources held by ctx before creating another SVN::Ra
+ # so destruction is orderly. This seems necessary with SVN 1.9.5
+ # to avoid segfaults.
+ $ctx = undef;
+
$gs->fetch_all;
}