svn commit: r1935107 - subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl
[email protected] Sun, 07 Jun 2026 15:26:13 -0000
| Newsgroups | gmane.comp.version-control.subversion.svn |
|---|---|
| Message-ID | <178084597391.3770560.2781680217715008520@svn03-he-fi> |
Author: brane
Date: Sun Jun 7 15:26:13 2026
New Revision: 1935107
Log:
Fix a bug in JavaHL where native code could modify a final attribute.
Found thanks to runtime warnings generated by OpenJDK 26.
* subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIObject.java
(JNIObject.cppAddr): Make attribute private and not final.
(JNIObject.getCppAddr): New protected accessor method.
Modified:
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIObject.java
Modified: subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIObject.java
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIObject.java Sun Jun 7 14:48:48 2026 (r1935106)
+++ subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIObject.java Sun Jun 7 15:26:13 2026 (r1935107)
@@ -31,10 +31,15 @@ public abstract class JNIObject
* slot for the address of the native peer. The JNI code controls this
* field. If it is set to 0 then underlying JNI object has been freed
*/
- protected final long cppAddr;
+ private long cppAddr = 0;
protected JNIObject(long cppAddr)
{
this.cppAddr = cppAddr;
}
+
+ protected long getCppAddr()
+ {
+ return cppAddr;
+ }
}