On Fri, Oct 7, 2011 at 5:51 AM, Philip Martin <philip.mar...@wandisco.com> wrote: > phi...@apache.org writes: > >> Author: philip >> Date: Thu Oct 6 19:26:00 2011 >> New Revision: 1179777 >> >> URL: http://svn.apache.org/viewvc?rev=1179777&view=rev >> Log: >> * STATUS: Propose r1179680. >> >> Modified: >> subversion/branches/1.7.x/STATUS >> >> Modified: subversion/branches/1.7.x/STATUS >> URL: >> http://svn.apache.org/viewvc/subversion/branches/1.7.x/STATUS?rev=1179777&r1=1179776&r2=1179777&view=diff >> ============================================================================== >> --- subversion/branches/1.7.x/STATUS (original) >> +++ subversion/branches/1.7.x/STATUS Thu Oct 6 19:26:00 2011 >> @@ -145,6 +145,13 @@ Candidate changes: >> Votes: >> +1: stsp, danielsh >> >> + * r1179680 >> + Fix javahl org.tigris.subversion to avoid double finalize. >> + Justification: >> + A double C++ delete can causes the JVM to SEGV. >> + Votes: >> + +1: philip > > This bug causes the JVM to crash when programs use the 1.6 compatibility > namespace, org.tigris.subversion, and allow SVNClient or SVNAdmin > objects to be GC'd: > > import org.tigris.subversion.javahl.SVNClient; > import org.tigris.subversion.javahl.SVNAdmin; > public class SVNTest { > public void Test() { > SVNClient client = new SVNClient(); > SVNAdmin admin = new SVNAdmin(); > } > public static void main(String[] args) { > SVNTest test = new SVNTest(); > test.Test(); > System.gc(); > test.Test(); > } > } > > I believe we don't see it in our regression tests because the tests > only create one object of each kind and GC doesn't run at exit. > > I don't know much about Java, is this a 1.7 release-critical issue?
Is it "a non-edge-case crash, a data corruption problem, a major security hole, or something equally serious"? I would say "no". People who are using these APIs can either wait a few weeks for 1.7.1, or if embedding Subversion can manually include them. -Hyrum -- uberSVN: Apache Subversion Made Easy http://www.uberSVN.com/