[Python-checkins] gh-74953: Fix PyThread_acquire_lock_timed() code recomputing the timeout (GH-93941)

miss-islington webhook-mailer at python.org
Fri Jun 17 10:40:06 EDT 2022


https://github.com/python/cpython/commit/1353b8a4bcef22d985a0b6a186c96439fd540ea8
commit: 1353b8a4bcef22d985a0b6a186c96439fd540ea8
branch: 3.11
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-06-17T07:39:27-07:00
summary:

gh-74953: Fix PyThread_acquire_lock_timed() code recomputing the timeout (GH-93941)


Set timeout, don't create a local variable with the same name.
(cherry picked from commit f64557f4803528c53bb9a1d565e3cdf92e97152f)

Co-authored-by: Victor Stinner <vstinner at python.org>

files:
M Python/thread_pthread.h

diff --git a/Python/thread_pthread.h b/Python/thread_pthread.h
index c90ab25d4841d..02c8427729545 100644
--- a/Python/thread_pthread.h
+++ b/Python/thread_pthread.h
@@ -506,7 +506,7 @@ PyThread_acquire_lock_timed(PyThread_type_lock lock, PY_TIMEOUT_T microseconds,
 #ifndef HAVE_SEM_CLOCKWAIT
         if (timeout > 0) {
             /* wait interrupted by a signal (EINTR): recompute the timeout */
-            _PyTime_t timeout = _PyDeadline_Get(deadline);
+            timeout = _PyDeadline_Get(deadline);
             if (timeout < 0) {
                 status = ETIMEDOUT;
                 break;



More information about the Python-checkins mailing list