summaryrefslogtreecommitdiff
path: root/dev-python/uvloop/files/uvloop-0.15.3-uint64-thread-id.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/uvloop/files/uvloop-0.15.3-uint64-thread-id.patch')
-rw-r--r--dev-python/uvloop/files/uvloop-0.15.3-uint64-thread-id.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/dev-python/uvloop/files/uvloop-0.15.3-uint64-thread-id.patch b/dev-python/uvloop/files/uvloop-0.15.3-uint64-thread-id.patch
new file mode 100644
index 000000000000..a74fedd308e9
--- /dev/null
+++ b/dev-python/uvloop/files/uvloop-0.15.3-uint64-thread-id.patch
@@ -0,0 +1,43 @@
+From 732df28f0739d84c687d3e6d81995dafa18ac775 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 28 Jul 2021 09:21:00 +0200
+Subject: [PATCH] Revert 32-bit thread ID hack
+
+Apparently the hack used to fix 32-bit platforms actually breaks 64-bit
+platforms using large thread IDs (e.g. sparc).
+
+Reverts: b5b4abb16ba558cf957cf40120dfd4937c53aea5
+---
+ uvloop/includes/stdlib.pxi | 2 +-
+ uvloop/loop.pyx | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/uvloop/includes/stdlib.pxi b/uvloop/includes/stdlib.pxi
+index adf9806..21d69e6 100644
+--- a/uvloop/includes/stdlib.pxi
++++ b/uvloop/includes/stdlib.pxi
+@@ -135,7 +135,7 @@ cdef int ssl_SSL_ERROR_WANT_READ = ssl.SSL_ERROR_WANT_READ
+ cdef int ssl_SSL_ERROR_WANT_WRITE = ssl.SSL_ERROR_WANT_WRITE
+ cdef int ssl_SSL_ERROR_SYSCALL = ssl.SSL_ERROR_SYSCALL
+
+-cdef uint64_t MAIN_THREAD_ID = <uint64_t><int64_t>threading.main_thread().ident
++cdef uint64_t MAIN_THREAD_ID = <uint64_t>threading.main_thread().ident
+ cdef threading_Thread = threading.Thread
+
+ cdef int subprocess_PIPE = subprocess.PIPE
+diff --git a/uvloop/loop.pyx b/uvloop/loop.pyx
+index d9b5aaa..96c9cde 100644
+--- a/uvloop/loop.pyx
++++ b/uvloop/loop.pyx
+@@ -707,7 +707,7 @@ cdef class Loop:
+ return
+
+ cdef uint64_t thread_id
+- thread_id = <uint64_t><int64_t>PyThread_get_thread_ident()
++ thread_id = <uint64_t>PyThread_get_thread_ident()
+
+ if thread_id != self._thread_id:
+ raise RuntimeError(
+--
+2.32.0
+