Skip to content

Commit

Permalink
More changes around refcount
Browse files Browse the repository at this point in the history
  • Loading branch information
jmao-denver committed Sep 18, 2024
1 parent d4d57ea commit 404fb91
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions src/main/c/jni/org_jpy_PyLib.c
Original file line number Diff line number Diff line change
Expand Up @@ -1191,13 +1191,17 @@ JNIEXPORT void JNICALL Java_org_jpy_PyLib_decRefs
buf = (*jenv)->GetLongArrayElements(jenv, objIds, &isCopy);
for (i = 0; i < len; i++) {
pyObject = (PyObject*) buf[i];
// refCount = pyObject->ob_refcnt;
// if (refCount <= 0) {
// JPy_DIAG_PRINT(JPy_DIAG_F_ALL, "Java_org_jpy_PyLib_decRefs: error: refCount <= 0: pyObject=%p, refCount=%d\n", pyObject, refCount);
// } else {
// JPy_DIAG_PRINT(JPy_DIAG_F_MEM, "Java_org_jpy_PyLib_decRefs: pyObject=%p, refCount=%d, type='%s'\n", pyObject, refCount, Py_TYPE(pyObject)->tp_name);
// JPy_DECREF(pyObject);
// }
#if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 12
refCount = pyObject->ob_refcnt;
#else
refCount = Py_REFCNT(pyObject);
#endif
if (refCount <= 0) {
JPy_DIAG_PRINT(JPy_DIAG_F_ALL, "Java_org_jpy_PyLib_decRefs: error: refCount <= 0: pyObject=%p, refCount=%d\n", pyObject, refCount);
} else {
JPy_DIAG_PRINT(JPy_DIAG_F_MEM, "Java_org_jpy_PyLib_decRefs: pyObject=%p, refCount=%d, type='%s'\n", pyObject, refCount, Py_TYPE(pyObject)->tp_name);
JPy_DECREF(pyObject);
}
}
(*jenv)->ReleaseLongArrayElements(jenv, objIds, buf, JNI_ABORT);
JPy_END_GIL_STATE
Expand Down

0 comments on commit 404fb91

Please sign in to comment.