UUID.st
changeset 1467 a394ade68816
parent 1447 210f3ac37991
child 1491 512b21b45a9e
--- a/UUID.st	Thu Jul 29 16:38:58 2004 +0200
+++ b/UUID.st	Fri Aug 13 15:31:06 2004 +0200
@@ -279,6 +279,9 @@
 
     "use 60 bit counter of 100ns ticks since 00:00:00 15.oct 1582 (sigh)"
     Lock critical:[
+        SequenceNumber isNil ifTrue:[
+            SequenceNumber := Random nextIntegerBetween:0 and:16383.
+        ].
         utcTime := self class getDtssUtcTime.
         LastTime < utcTime ifTrue:[
             Increment := 0.
@@ -287,17 +290,13 @@
                 "clock didn't advance since last call. Simply add a tick"
                 Increment := Increment + 1.
             ] ifFalse:[
-                "clock went backwards increment SequenceNumber"
+                "clock went backwards - increment SequenceNumber"
                 Increment := 0.
                 SequenceNumber := SequenceNumber + 1.
                 SequenceNumber >= 16384 ifTrue:[SequenceNumber := 0].
             ].
         ].
-        SequenceNumber isNil ifTrue:[
-            SequenceNumber := Random nextIntegerBetween:0 and:16383.
-        ].
         
-
         LastTime := utcTime.
         utcTime := utcTime + Increment.
     ].
@@ -363,7 +362,7 @@
 !UUID class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/UUID.st,v 1.9 2004-04-30 11:57:37 penk Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/UUID.st,v 1.10 2004-08-13 13:31:06 stefan Exp $'
 ! !
 
 UUID initialize!