Semaphore.st
changeset 6616 70d54ffebc91
parent 6615 2b56a43d0e89
child 6786 f2ba4ca0bff4
--- a/Semaphore.st	Wed Jul 10 13:10:24 2002 +0200
+++ b/Semaphore.st	Wed Jul 10 13:11:43 2002 +0200
@@ -1,6 +1,6 @@
 "
  COPYRIGHT (c) 1993 by Claus Gittinger
-              All Rights Reserved
+	      All Rights Reserved
 
  This software is furnished under a license and may be used
  only in accordance with the terms of that license and with the
@@ -13,10 +13,10 @@
 "{ Package: 'stx:libbasic' }"
 
 Object subclass:#Semaphore
-        instanceVariableNames:'count waitingProcesses lastOwnerID name'
-        classVariableNames:''
-        poolDictionaries:''
-        category:'Kernel-Processes'
+	instanceVariableNames:'count waitingProcesses lastOwnerID name'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Kernel-Processes'
 !
 
 !Semaphore class methodsFor:'documentation'!
@@ -24,7 +24,7 @@
 copyright
 "
  COPYRIGHT (c) 1993 by Claus Gittinger
-              All Rights Reserved
+	      All Rights Reserved
 
  This software is furnished under a license and may be used
  only in accordance with the terms of that license and with the
@@ -441,7 +441,7 @@
     [
         gotSema := self wait.
         retVal := aBlock value.
-    ] valueOnUnwindDo:[
+    ] ifCurtailed:[
         "/ be careful - the unwind may occur both while waiting
         "/ AND while evaluating the block.
         gotSema notNil ifTrue:[self signal].
@@ -610,7 +610,7 @@
             "
             [
                 activeProcess suspendWithState:#wait
-            ] valueOnUnwindDo:[
+            ] ifCurtailed:[
                 waitingProcesses removeIdentical:activeProcess ifAbsent:[].
                 wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
             ].
@@ -660,7 +660,7 @@
         "
         [
             activeProcess suspendWithState:#wait
-        ] valueOnUnwindDo:[
+        ] ifCurtailed:[
             waitingProcesses removeIdentical:activeProcess ifAbsent:[].
             wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
         ].
@@ -747,7 +747,7 @@
             "
             [
                 activeProcess suspendWithState:#wait.
-            ] valueOnUnwindDo:[
+            ] ifCurtailed:[
                 unblock := nil.
                 waitingProcesses removeIdentical:activeProcess ifAbsent:[].
                 wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
@@ -781,5 +781,5 @@
 !Semaphore class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Semaphore.st,v 1.63 2002-07-10 11:10:24 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Semaphore.st,v 1.64 2002-07-10 11:11:43 cg Exp $'
 ! !