From: Steve Dower Date: Tue, 14 Jul 2015 20:25:03 +0000 (-0700) Subject: Issue #24634: Importing uuid should not try to load libc on Windows X-Git-Tag: v3.5.0rc1~7 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=71a36f735ba8b70a4f6ff51fdc10f1c8df0285da;p=python Issue #24634: Importing uuid should not try to load libc on Windows --- diff --git a/Lib/uuid.py b/Lib/uuid.py index 5c731ec003..a6643ed451 100644 --- a/Lib/uuid.py +++ b/Lib/uuid.py @@ -459,10 +459,14 @@ def _netbios_getnode(): _uuid_generate_random = _uuid_generate_time = _UuidCreate = None try: import ctypes, ctypes.util + import sys # The uuid_generate_* routines are provided by libuuid on at least # Linux and FreeBSD, and provided by libc on Mac OS X. - for libname in ['uuid', 'c']: + _libnames = ['uuid'] + if not sys.platform.startswith('win'): + _libnames.append('c') + for libname in _libnames: try: lib = ctypes.CDLL(ctypes.util.find_library(libname)) except Exception: @@ -473,6 +477,7 @@ try: _uuid_generate_time = lib.uuid_generate_time if _uuid_generate_random is not None: break # found everything we were looking for + del _libnames # The uuid_generate_* functions are broken on MacOS X 10.5, as noted # in issue #8621 the function generates the same sequence of values @@ -481,7 +486,6 @@ try: # # Assume that the uuid_generate functions are broken from 10.5 onward, # the test can be adjusted when a later version is fixed. - import sys if sys.platform == 'darwin': import os if int(os.uname().release.split('.')[0]) >= 9: diff --git a/Misc/NEWS b/Misc/NEWS index 4bcd2c81d4..4cb08eef7a 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -15,6 +15,8 @@ Core and Builtins Library ------- +- Issue #24634: Importing uuid should not try to load libc on Windows + - Issue #24798: _msvccompiler.py doesn't properly support manifests - Issue #4395: Better testing and documentation of binary operators.