[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r1801108 - in /subversion/trunk/subversion/bindings/javahl/native: Array.cpp CreateJ.cpp Iterator.cpp OperationContext.cpp RemoteSession.cpp RevisionRangeList.cpp

From: Philip Martin <philip_at_codematters.co.uk>
Date: Fri, 07 Jul 2017 13:22:00 +0100

Branko Čibej <brane_at_apache.org> writes:

> On 06.07.2017 23:11, Philip Martin wrote:
>> // Create a local frame for our references
>> - env->PushLocalFrame(LOCAL_FRAME_SIZE);
>> + env->PushLocalFrame(LOCAL_FRAME_SIZE + 100);
>
> Mmph ... it kinda hurts to see how limited the JNI API is in this
> respect. We could either increase the LOCAL_FRAME_SIZE variable, or
> create a new frame within each iteration of the loop.

We might be able to fix the unparseExternals case by passing an env into
the functor, then we would be creating fewer refs.

putErrorsInTrace is harder because it is recursive and stores a ref at
each level. Would pushing/poping frames invalidate those refs? Perhaps
converting the recursion to iteration might be the best solution.

-- 
Philip
Received on 2017-07-07 14:22:06 CEST

This is an archived mail posted to the Subversion Dev mailing list.