diff --git a/modules/core/misc/java/src/java/core+Mat.java b/modules/core/misc/java/src/java/core+Mat.java index 4fd60a79c6..6db255417c 100644 --- a/modules/core/misc/java/src/java/core+Mat.java +++ b/modules/core/misc/java/src/java/core+Mat.java @@ -640,7 +640,6 @@ public class Mat { { n_release(nativeObj); - n_delete(nativeObj); return; } @@ -907,6 +906,12 @@ public class Mat { return retVal; } + @Override + protected void finalize() throws Throwable { + n_delete(nativeObj); + super.finalize(); + } + // javadoc:Mat::toString() @Override public String toString() { diff --git a/modules/java/generator/gen_java.py b/modules/java/generator/gen_java.py index eccc541508..cbc28484a5 100755 --- a/modules/java/generator/gen_java.py +++ b/modules/java/generator/gen_java.py @@ -1530,7 +1530,7 @@ JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_${clazz}_$fname # finalize() ci.j_code.write( """ - public void delete() { + protected void delete() { delete(nativeObj); } """ )