Issue #18784: The uuid module no more attempts to load libc via ctypes.CDLL,
if all necessary functions are already found in libuuid.
Patch by Evgeny Sologubov.
diff --git a/Lib/uuid.py b/Lib/uuid.py
index 484a231..93254ec 100644
--- a/Lib/uuid.py
+++ b/Lib/uuid.py
@@ -429,6 +429,8 @@
_uuid_generate_random = lib.uuid_generate_random
if hasattr(lib, 'uuid_generate_time'):
_uuid_generate_time = lib.uuid_generate_time
+ if _uuid_generate_random is not None:
+ break # found everything we were looking for
# The uuid_generate_* functions are broken on MacOS X 10.5, as noted
# in issue #8621 the function generates the same sequence of values
diff --git a/Misc/ACKS b/Misc/ACKS
index 9d0dc46..be488d6 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -1199,6 +1199,7 @@
Eric Snow
Dirk Soede
Paul Sokolovsky
+Evgeny Sologubov
Cody Somerville
Edoardo Spadolini
Clay Spence
diff --git a/Misc/NEWS b/Misc/NEWS
index 23035d2..556dca2 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,10 @@
Library
-------
+- Issue #18784: The uuid module no more attempts to load libc via ctypes.CDLL,
+ if all necessary functions are already found in libuuid.
+ Patch by Evgeny Sologubov.
+
- The :envvar:`PYTHONFAULTHANDLER` environment variable now only enables the
faulthandler module if the variable is non-empty. Same behaviour than other
variables like :envvar:`PYTHONDONTWRITEBYTECODE`.