mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2025-12-11 00:07:51 +03:00
Yet another zstd implementation for Python, this time backporting the support from Python 3.14. Surely this won't lead to XKCD#927. Signed-off-by: Michał Górny <mgorny@gentoo.org>
32 lines
1.2 KiB
Diff
32 lines
1.2 KiB
Diff
From be7548ac9a08de3ae1a8cf3c47630336d65b656f Mon Sep 17 00:00:00 2001
|
|
From: Rogdham <contact@rogdham.net>
|
|
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 */
|
|
|