summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_uuid.py2
-rw-r--r--Lib/uuid.py4
-rw-r--r--Misc/NEWS11
3 files changed, 14 insertions, 3 deletions
diff --git a/Lib/test/test_uuid.py b/Lib/test/test_uuid.py
index 06ec51da79..90671be05d 100644
--- a/Lib/test/test_uuid.py
+++ b/Lib/test/test_uuid.py
@@ -429,7 +429,7 @@ class TestUUID(TestCase):
# Make sure the generated UUIDs are actually unique.
uuids = {}
- for u in [uuid.uuid1() for i in range(1000)]:
+ for u in [uuid.uuid4() for i in range(1000)]:
uuids[u] = 1
equal(len(uuids.keys()), 1000)
diff --git a/Lib/uuid.py b/Lib/uuid.py
index 684bbeb946..ae3da25ca5 100644
--- a/Lib/uuid.py
+++ b/Lib/uuid.py
@@ -488,8 +488,8 @@ def uuid1(node=None, clock_seq=None):
# 0x01b21dd213814000 is the number of 100-ns intervals between the
# UUID epoch 1582-10-15 00:00:00 and the Unix epoch 1970-01-01 00:00:00.
timestamp = int(nanoseconds/100) + 0x01b21dd213814000L
- if timestamp == _last_timestamp:
- timestamp += 1
+ if timestamp <= _last_timestamp:
+ timestamp = _last_timestamp + 1
_last_timestamp = timestamp
if clock_seq is None:
import random
diff --git a/Misc/NEWS b/Misc/NEWS
index c4824110eb..2cd956193e 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -4,6 +4,17 @@ Python News
(editors: check NEWS.help for information about editing NEWS using ReST.)
+What's New in Python 2.5?
+=========================
+
+*Release date: XX-SEP-2006*
+
+Library
+-------
+
+- Bug #1541863: uuid.uuid1 failed to generate unique identifiers
+ on systems with low clock resolution.
+
What's New in Python 2.5 release candidate 1?
=============================================