]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
#4363: Let uuid.uuid1() and uuid.uuid4() run even if the ctypes module is not present.
authorAmaury Forgeot d'Arc <amauryfa@gmail.com>
Fri, 21 Nov 2008 22:05:48 +0000 (22:05 +0000)
committerAmaury Forgeot d'Arc <amauryfa@gmail.com>
Fri, 21 Nov 2008 22:05:48 +0000 (22:05 +0000)
Will backport to 2.6

Lib/uuid.py
Misc/NEWS

index e1b2f4b881f8144dd80a65a0df4c60df1d28ba75..4840fa5d0f31359af6c989b926bf3269f07b2358 100644 (file)
@@ -479,8 +479,8 @@ def uuid1(node=None, clock_seq=None):
 
     # When the system provides a version-1 UUID generator, use it (but don't
     # use UuidCreate here because its UUIDs don't conform to RFC 4122).
-    _buffer = ctypes.create_string_buffer(16)
     if _uuid_generate_time and node is clock_seq is None:
+        _buffer = ctypes.create_string_buffer(16)
         _uuid_generate_time(_buffer)
         return UUID(bytes=_buffer.raw)
 
@@ -516,8 +516,8 @@ def uuid4():
     """Generate a random UUID."""
 
     # When the system provides a version-4 UUID generator, use it.
-    _buffer = ctypes.create_string_buffer(16)
     if _uuid_generate_random:
+        _buffer = ctypes.create_string_buffer(16)
         _uuid_generate_random(_buffer)
         return UUID(bytes=_buffer.raw)
 
index 7e6787a841be51e2e95bd5952bc9bb3374302839..1fcf3194c471a22aca0831d58efece7c61975783 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -50,6 +50,9 @@ Core and Builtins
 Library
 -------
 
+- Issue #4363: The uuid.uuid1() and uuid.uuid4() functions now work even if
+  the ctypes module is not present.
+
 - Issue #4116: Resolve member name conflict in ScrolledCanvas.__init__.
 
 - httplib.HTTPConnection.putheader() now accepts an arbitrary number of values