Log Message: |
JavaHL: Fix incorrect cache in SVNBase::createCppBoundObject
The problem here is that 'SVNBase::createCppBoundObject' can work
with different classes (see argument), but it cached methodID of
'<init>' for the first class processed. When invoked with a
different class later, it will call wrong '<init>' method.
The error is seen when running JavaHL tests with JDK14.
Error message is:
FATAL ERROR in native method: Wrong object class or methodID passed to JNI call
at <...>.javahl.util.SubstLib.translateOutputStream(Native Method)
at <...>.javahl.SVNUtil.translateStream(SVNUtil.java:1046)
at <...>.javahl.UtilTests.testTranslateStream(UtilTests.java:521)
<...>
[in subversion/bindings/javahl]
* native/SVNBase.cpp
(createCppBoundObject): Do not cache methodID.
Review by: hartmannathan
Approved by: hartmannathan
|