SemaphoreSet.st
changeset 2876 fb3fed7470be
parent 1801 74d0e3858ded
child 5570 e6e14f50d721
--- a/SemaphoreSet.st	Wed Aug 20 16:48:38 1997 +0200
+++ b/SemaphoreSet.st	Wed Aug 20 18:39:12 1997 +0200
@@ -37,9 +37,9 @@
 
 documentation
 "
-    SemaphoreSets allow waiting until one of several semaphores become available.
-    They provide a waiting protocol compatible to Semaphore, i.e. #wait and
-    #waitWithTimeOut.
+    SemaphoreSets allow waiting until one of several semaphores becomes available.
+    They provide a waiting protocol which is compatible to Semaphore, 
+    i.e. #wait and #waitWithTimeOut.
 
     [see also:]
         Semaphore
@@ -204,12 +204,15 @@
         ] ifNone:[].
     ] valueNowOrOnUnwindDo:[
         wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+        self do:[:aSema |
+            aSema unregisterProcess:currentProcess.
+        ]
     ].
 
     ^ gotSema
 
     "Modified: 15.12.1995 / 23:10:07 / stefan"
-    "Modified: 28.2.1996 / 21:25:54 / cg"
+    "Modified: 20.8.1997 / 18:33:09 / cg"
 !
 
 waitWithTimeout:seconds
@@ -263,15 +266,18 @@
         ] ifNone:[].
     ] valueNowOrOnUnwindDo:[
         wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+        self do:[:aSema |
+            aSema unregisterProcess:currentProcess.
+        ]
     ].
     ^ gotSema
 
     "Modified: 15.12.1995 / 23:10:54 / stefan"
-    "Modified: 28.2.1996 / 21:26:19 / cg"
+    "Modified: 20.8.1997 / 18:33:23 / cg"
 ! !
 
 !SemaphoreSet class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/SemaphoreSet.st,v 1.10 1996-10-22 19:34:31 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/SemaphoreSet.st,v 1.11 1997-08-20 16:39:12 cg Exp $'
 ! !