From be7548ac9a08de3ae1a8cf3c47630336d65b656f Mon Sep 17 00:00:00 2001 From: Rogdham Date: Sun, 19 Oct 2025 09:06:31 +0200 Subject: [PATCH] fix: assertions on 3.13 --- src/c/compat/backports_zstd_edits.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/c/compat/backports_zstd_edits.h b/src/c/compat/backports_zstd_edits.h index 1e4b9f7..4cf076c 100644 --- a/src/c/compat/backports_zstd_edits.h +++ b/src/c/compat/backports_zstd_edits.h @@ -107,12 +107,14 @@ static inline int BACKPORTSZSTD_LOCK_isLocked(PyThread_type_lock *mp) #define BACKPORTSZSTD_LOCK_lock PyMutex_Lock #define BACKPORTSZSTD_LOCK_unlock PyMutex_Unlock #define BACKPORTSZSTD_LOCK_free(l) +#if PY_VERSION_HEX < 0x030E0000 // Python 3.13 and below static inline int BACKPORTSZSTD_LOCK_isLocked(PyMutex *lp) { - // note: this function is only used in asserts - // PyMutex_IsLocked is not exposed publicly https://github.com/python/cpython/issues/134009 - Py_FatalError("Not implemented"); + return (_Py_atomic_load_uint8(&lp->_bits) & _Py_LOCKED) != 0; } +#else // Python 3.14 and above +#define BACKPORTSZSTD_LOCK_isLocked PyMutex_IsLocked +#endif #endif /* !BACKPORTSZSTD_LOCK */