Dev: fix DeleteLocalRef in JNIStorageObject
This commit is contained in:
parent
86d270a328
commit
ae7ca8ab2e
|
@ -45,7 +45,13 @@ indirect enum JNIStorageType {
|
|||
|
||||
class JNIStorageObject {
|
||||
let type: JNIStorageType
|
||||
var javaObject: jobject!
|
||||
var javaObject: jobject! {
|
||||
didSet {
|
||||
if let value = oldValue {
|
||||
JNI.api.DeleteLocalRef(JNI.env, value)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
init(type: JNIStorageType, javaObject: jobject) {
|
||||
self.type = type
|
||||
|
@ -57,7 +63,9 @@ class JNIStorageObject {
|
|||
}
|
||||
|
||||
deinit {
|
||||
JNI.api.DeleteLocalRef(JNI.env, javaObject)
|
||||
if let value = javaObject {
|
||||
JNI.api.DeleteLocalRef(JNI.env, value)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue